python - 如何使用 netcdf 将年份设置为时间坐标
问题描述
years = range(2011, 2020)
dataset1 = [xr.open_dataset('dataset') for year in years]
dataset1= xr.concat(dataset1, dim='time')
# set year as time coordinate
dataset1= dataset1. assign_coords(year=('time', years))
但是错误ValueError:维度“时间”的大小冲突:“年”的长度为9,“时间”的长度为1080
解决方案
我猜你每年在时间维度上有不止一个数据点。解决这个问题的一种方法是分配一个包含数据集中每个时间的年份的年份坐标,尽管它会包含重复值。您可以使用以下命令执行此操作DatetimeAccessor
:
dataset1 = dataset1.assign_coords(year=dataset1.time.dt.year)