2017-08-24 60 views
2

我为布尔索引使用xarrayDataArray对象。它有效...有时。在下面的例子中,它适用于大阵列,但不适用于小阵列:什么时候可以使用布尔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],但我还是挺被观察到的行为感到不解。)

回答

相关问题