jcmgray / xyzpy

Efficiently generate and analyse high dimensional data.
http://xyzpy.readthedocs.io
MIT License
67 stars 11 forks source link

`var_names` not needed when DataArrays are passed #16

Open max-sixty opened 1 year ago

max-sixty commented 1 year ago

\@dcherian pointed me towards this library in https://github.com/pydata/xarray/discussions/7498, it looks awesome!

Very small point — when I have something like the linked example, but add a cast to a DataArray in the func:

def generate_timeseries(x, y):
    return xr.DataArray(np.random.normal(loc=x, scale=y, size=100))

...then var_names doesn't seem to do anything; I get back a DataArray anyway (which is great!). But it still requires passing something, so I'm just passing Runner(gen, var_names=["foo"]) atm.

Could we avoid having to pass anything there? Or is there a different construction I should be choosing?

jcmgray commented 1 year ago

It should work with var_names=None which is buried in the docstrings here. By default var_names is required rather than being a default simply because handling DataSet / DataArray was functionality added later. But would happily think about making it the default - the only problem is its hard to check / helpfully error until the function is actually run etc.

max-sixty commented 1 year ago

OK cool — feel free to close, passing var_names=None is the smallest of small issues...