2
我为布尔索引使用xarray
DataArray
对象。它有效...有时。在下面的例子中,它适用于大阵列,但不适用于小阵列:什么时候可以使用布尔DataArray进行索引?
In [12]: x = xarray.DataArray(numpy.arange(336*49).reshape(336,49))
In [13]: x.values[x==-1]
Out[13]: array([], dtype=int64)
In [14]: x = xarray.DataArray(numpy.arange(20*10).reshape(20, 10))
In [15]: x.values[x==-1]
---------------------------------------------------------------------------
IndexError Traceback (most recent call last)
<ipython-input-15-9340240dc777> in <module>()
----> 1 x.values[x==-1]
IndexError: too many indices for array
它应该是可能的吗?为什么它在一个案件中起作用,但在另一个案件中却不起作用
(当然,正确的调整将是x.values[x.values==-1]
,但我还是挺被观察到的行为感到不解。)