问题描述
我正在尝试使用xarray合并多个NetCDF文件。
这是我的尺寸:
Dimensions: (Time: 1,XCells: 2000,YCells: 1000)
Coordinates:
longitude (YCells,XCells) float32
latitude (YCells,XCells) float32
* Time (Time) datetime64[ns]
Dimensions without coordinates: XCells,YCells
组合by_coords仅适用于一维坐标。 combining spatial netcdf files using xarray python
但是,当我使用combin =“ nested”时,它会为时间重复纬度和经度。
float longitude(Time,YCells,XCells);
longitude:_FillValue = NaNf;
float latitude(Time,XCells);
latitude:_FillValue = NaNf;
纬度和经度是2D,但在整个时间上相同。 Xarray是否可以合并这些数据?
解决方法
我使用netcdf-python和numpy按时间合并了文件。
将一个数据集复制到另一个数据集的代码类似于Xavier Ho在这里的解决方案: python netcdf: making a copy of all variables and attributes but one
我不想重复的变量直接复制了。对于时间维度和变量随时间的变化,我使用numpy slices更改了复制表达式。