nco - 如何在 cdo 中的时间线性插值(inttime)后更正时间戳
问题描述
我有一个每小时时间步长的数据集,我在 cdo 中使用“inttime”将其插入到 30 分钟。但是,输出的时间戳不正确,它只是从原始数据中复制而来。如何使用 cdo (或 nco)纠正它?
我正在使用“cdo inttime,date,time,inc ifile.nc ofile.nc”对数据进行插值。
这就是我在插值后得到的... 2000-01-01 01: 00 :00, 2000-01-01 01: 00 :00, 2000-01-01 02: 00 :00, 2000-01-01 02 : 00 :00 等
但这是插值后我想要的... 2000-01-01 01: 00 :00, 2000-01-01 01: 30 :00, 2000-01-01 02: 00 :00, 2000-01 -01 02:30:00等
提前感谢所有帮助!
干杯,M。
解决方案
您可以通过使用ncap2将其分配给算术递增数组来纠正错误插值后的时间变量,例如,如果单位是自开始日以来的小时数,则类似于以下内容...
ncap2 -s 'time=array(1.0,0.5,$time)' in.nc out.nc
ncap2
也可以使用 GSL 进行插值,但 CDO 公式看起来要简单得多,所以我不会费心去尝试改变它。
推荐阅读
- flutter - Flutter:在屏幕上拖动小部件(不是拖放)
- r - R中因子设计中的调节分析
- elf - 跳过功能需要更改的最小字节数是多少
- javascript - 未捕获的 TypeError:chrome.runtime.sendMessages 不是 Chrome 扩展开发中的函数
- c++ - 使用 __VA_ARGS__ 在 C/C++ 中进行宏扩展
- python - 在最后一行不是 NA 之后删除所有具有所有 NA 值的行
- python - 通过不带参数 discord.py 的命令向用户发布角色
- react-native - 功能组件中的无效挂钩调用
- javascript - 使用带动态参数的和谐修改 HTML 响应以用于多个动态操作
- node.js - npm audit fix --force 永远无法避免漏洞