使用xarray替换维度为time时触发ValueError的技术求助
解决思路
错误根源是你还未将生成的日期序列正确关联到原Dataset的index维度,就直接执行维度交换操作。按以下方法操作即可解决:
方法一:分步操作
- 先将生成的
dates作为变量添加到Dataset,维度指定为原有的index:dsn['time'] = ('index', dates) - 将
time设置为Dataset的坐标:dsn = dsn.set_coords('time') - 交换维度,把原
index维度替换为time:dsn = dsn.swap_dims({'index': 'time'})
方法二:简洁写法
用assign_coords直接创建time坐标,同时重命名维度,一步完成:
dsn = dsn.assign_coords(time=('index', dates)).rename_dims({'index': 'time'})
操作完成后,你的Dataset会将原index维度替换为time维度,且time坐标就是你生成的cftime日期序列。
内容的提问来源于stack exchange,提问作者user14771692
相关产品推荐
相关产品推荐

