3
我有一些數組與dims 'time', 'lat', 'lon'
和一些只有'lat', 'lon'
。我經常要做到這一點,以與一個2D(LAT-LON)以掩蔽時間依賴性數據掩蔽:在xarray布爾索引
x.data[:, mask.data] = np.nan
當然,計算預期廣播。如果y
是2D LAT-LON的數據,它的值被廣播到所有的時間座標X:
z = x + y
但正如我所期待的索引沒有廣播。我希望能夠做到這一點,但它提出了ValueError異常:緩衝區有維數錯誤的:
x[mask] = np.nan
最後,似乎xr.where
確實廣播跨越時空座標面具的值如預期的那樣,但是你不能以這種方式設置值。
x_masked = x.where(mask)
那麼,有沒有什麼我在這裏丟失,有利於使用缺少尺寸(需要廣播)的布爾掩模設置值?我是在頂部提供真正做到這一點的方式選項(在這種情況下,我可能也僅僅是使用標準numpy的陣列...)
感謝您的確認,並高興地聽到更新正在積極來了! – jmilloy
這些變化是否在xarray 0.8.2中生存? – gerrit