使用xarray.应用程序(南森np)带参数

2024-10-03 23:18:48 发布

您现在位置:Python中文网/ 问答频道 /正文

我一直试图将^{cd1>}应用到xr.Dataset(Xaray),但继续提出错误。对于三维数据集,我尝试应用于axis=2。语法不太清楚,我可能误解了documentation,但我尝试过:

ds.apply(np.nansum,axis=2)` and `ds.apply(lambda x: np.nansum(x,axis=2))

并获得相同的错误:

cannot set variable 'var' with 2-dimensional data without explicit dimension names. Pass a tuple of (dims, data) instead.

我猜这意味着它不知道返回到新数据集对象的维度名称是什么?有什么办法解决这个问题吗?

还有谁知道为什么和什么时候xarray可以实现^{cd2>}? 谢谢


Tags: and数据datadocumentation错误np语法ds
2条回答

您在这里遇到的问题是nansum返回一个numpy ndarray,而不是{},这就是传递给apply的函数应该返回的内容。在

对于nansum,您应该只使用xarray.Dataset.sum,如果您的数据是float,它将默认跳过nan。在

Jeremy是正确的,内置的sum()方法在默认情况下已经跳过了NaN。但是如果您想提供一个定制的聚合函数,可以使用reduce,例如ds.reduce(np.nansum, axis=2)。在

相关问题 更多 >