【发布时间】:2022-01-19 01:13:30
【问题描述】:
我有一个 DataSet ds_object,看起来像这样:
ds_object
<xarray.Dataset>
Dimensions: (time: 14392)
Coordinates:
* time (time) datetime64[ns] 2021-08-28T00:00:02.14...
Data variables:
variable .......
“变量”在哪里:
<xarray.DataArray 'variable' ()>
array(0., dtype=float32)
Attributes:
units: count
我正在尝试按时间扩展零维variable。因此,本质上,将“变量”从 0D 更改为 1D 数组,形状为(1, 14392)。 variable 将具有与“时间”相同的长度,但 variable 的奇异值重复了 14392 次。
我能够做到这一点:
variable = np.full((1,len(time)),variable)
这为variable 提供了我需要的形状,但由于某种原因,这会作为坐标变量返回到 ds_object:
ds_object = ds_object.assign(variable_new=(variable[0]))
print(ds_object)
<xarray.Dataset>
Dimensions: (time: 13164, variable_new: 13164)
Coordinates:
* time (time) datetime64[ns] 2021-08-28T00:00:02.14...
* variable_new (variable_new) float32 0.0 0.0 ... 0.0
Data variables: (12/28)
为什么会这样?如何将 variable_new 作为新数据变量添加到 ds_object?
【问题讨论】:
-
欢迎堆栈溢出!这看起来是一个很好的问题,但我似乎无法运行您的代码并获得相同的结果。你能确定你问题中的代码是minimal reproducible example吗?
标签: python numpy python-xarray