我有N个1D xr.DataArray
,坐标为1 array
,坐标为1 b
,scalar
。我想将它们组合为具有a
坐标DataArray
,array
的2D b
。这该怎么做?我尝试过:
a
结果:
x1 = xr.DataArray(np.arange(0,3)[...,np.newaxis], coords=[('b', np.arange(3,6)),('a', [10])]).squeeze()
x2 = xr.DataArray(np.arange(0,3)[...,np.newaxis], coords=[('b', np.arange(3,6)),('a', [11])]).squeeze()
xcombined = xr.concat([x1, x2])
xcombined
现在我想选择一个特别的'a':
<xarray.DataArray (concat_dims: 2, b: 3)>
array([[0, 1, 2],
[0, 1, 2]])
Coordinates:
* b (b) int64 3 4 5
a (concat_dims) int64 10 11
Dimensions without coordinates: concat_dims
但是,这引起了:
xcombined.sel(a=10)
答案 0 :(得分:1)
如果您向dim
提供concat
,则可以:
xcombined = xr.concat([x1, x2], dim='a')
然后:
xcombined.sel(a=10)
<xarray.DataArray (b: 3)>
array([0, 1, 2])
Coordinates:
* b (b) int64 3 4 5
a int64 10