xarray 乘法运算后数组的形状不正确
Incorrect shape of array after xarray multiplication operation
根据
import xarray as xr
hndl_tran = xr.open_dataset(path_netcdf, chunks={'time': 10})
flow_data = hndl_tran['val']
new_arr = flow_data * xr.DataArray(vba)
这是输入数组的形状
flow_data.shape
(1165, 720, 1440)
vba.shape
(720L, 1440L)
下面是相乘后的数组形状:
new_arr.shape
(1165, 720, 1440, 720, 1440)
我希望生成的数组具有与 flow_data 相同的形状。我该怎么做?
xarray 根据数组的维度对齐形状。因此,如果维度不共享名称,则乘法将创建所有维度的并集。
我认为 flow_data
和 vba
具有不同的命名维度 - 使用 .rename
将匹配维度设置为匹配名称
根据
import xarray as xr
hndl_tran = xr.open_dataset(path_netcdf, chunks={'time': 10})
flow_data = hndl_tran['val']
new_arr = flow_data * xr.DataArray(vba)
这是输入数组的形状
flow_data.shape
(1165, 720, 1440)
vba.shape
(720L, 1440L)
下面是相乘后的数组形状:
new_arr.shape
(1165, 720, 1440, 720, 1440)
我希望生成的数组具有与 flow_data 相同的形状。我该怎么做?
xarray 根据数组的维度对齐形状。因此,如果维度不共享名称,则乘法将创建所有维度的并集。
我认为 flow_data
和 vba
具有不同的命名维度 - 使用 .rename
将匹配维度设置为匹配名称