Xarray - 连接来自多个文件的切片
Xarray - concatenating slices from multiple files
我正在尝试将多个文件的切片连接成一个文件(由零数组初始化),然后写入 nCDF 文件。但是,我收到错误:
arguments without labels along dimension 'Time' cannot be aligned
because they have different dimension sizes: {365, 30}
我理解错误(isel() 将维度的大小更改为切片的大小),但是我不知道如何更正或规避该问题。我是否正确地处理了这个任务?这是第一次迭代的简化版本:
import xarray as xr
import numpy as np
i=0
PRCP = np.zeros((365,327,348))
d = xr.open_dataset("/Path")
d = d.isel(Time=slice(0,-1,24))
P = d['CUMPRCP'].values
DinM = P.shape[0]
PRCP[i:i+DinM,:,:] = P
i = i + DinM
PRCPxr = xr.DataArray(PRCP.astype('float32'),dims=[('Time'),
'south_north', 'west_east'])
d['DPRCP'] = PRCPxr
通过从 xr.DataArray() 中删除 dims=() 参数解决了问题,它任意重命名了它们。
我正在尝试将多个文件的切片连接成一个文件(由零数组初始化),然后写入 nCDF 文件。但是,我收到错误:
arguments without labels along dimension 'Time' cannot be aligned
because they have different dimension sizes: {365, 30}
我理解错误(isel() 将维度的大小更改为切片的大小),但是我不知道如何更正或规避该问题。我是否正确地处理了这个任务?这是第一次迭代的简化版本:
import xarray as xr
import numpy as np
i=0
PRCP = np.zeros((365,327,348))
d = xr.open_dataset("/Path")
d = d.isel(Time=slice(0,-1,24))
P = d['CUMPRCP'].values
DinM = P.shape[0]
PRCP[i:i+DinM,:,:] = P
i = i + DinM
PRCPxr = xr.DataArray(PRCP.astype('float32'),dims=[('Time'),
'south_north', 'west_east'])
d['DPRCP'] = PRCPxr
通过从 xr.DataArray() 中删除 dims=() 参数解决了问题,它任意重命名了它们。