我有N1Dxr.DataArray,有1 array坐标b和1 scalar坐标a。我想把它们组合成带有array坐标b,a的2D DataArray。怎么做呢?我试过:
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在以下方面的成果:
<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现在我喜欢选择一个特别的'a':
xcombined.sel(a=10)然而,这就提出了:
ValueError: dimensions or multi-index levels ['a'] do not exist发布于 2019-01-24 15:59:16
如果您将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 10https://stackoverflow.com/questions/54346129
复制相似问题