Tom*_*Cho 3 numpy python-xarray
考虑下面使用 DataArray 的示例:
In [34]: import xarray as xr
In [35]: da=xr.DataArray(np.random.rand(5,5,5), dims=['x', 'y', 'z'], coords=dict(x=range(5), y=range(5), z=range(5)))
In [36]: da.mean()
Out[36]:
<xarray.DataArray ()>
array(0.547996)
Run Code Online (Sandbox Code Playgroud)
均值运算返回的对象类型实际上是一个没有任何维度的 DataArray。然而,有时这很麻烦,我想xarray在那时返回一个好的旧浮动。这可能吗?理想情况下会有类似“xr.options.return_mode”或类似的东西(而不是必须在每个函数中使用额外的参数)。
目前,xarray 没有类似xr.options.return_mode. 来自 xarray文档:
xarray 努力保持自洽:对 DataArray(或数据集)的操作返回另一个 DataArray(或数据集)对象。特别是,返回标量值的操作(例如,索引或聚合,如应用于所有轴的均值或总和)也将返回 xarray 对象。
不幸的是,这意味着我们有时必须在其他库中使用 xarray 时显式地转换结果。
因此,如果你想要一个 python 标量,其中任何一个都可以工作:
float(da.mean())
Run Code Online (Sandbox Code Playgroud)
或者
da.mean().item()
Run Code Online (Sandbox Code Playgroud)