我有一年的数据作为每月 NetCDF 文件,我想把它们变成每日文件。我知道我可以使用 ncks 提取 24 小时,像这样
ncks -d time,0,23 -o output.nc input.nc
但我想自动将整个月分成几天,而不必担心每个月的天数等等。是否有捷径可寻?(我当然可以编写一个调用 ncks 的 python 脚本或类似的脚本,但避免这种情况会更优雅。)
NCO -d hyperslab 开关理解 UDUnits 格式的日期。如果您的输入文件包含格式良好的时间单位属性,那么编写十二个命令应该没有问题,每个命令都有一个日期超平板,例如
ncks -d time,1918-01-01,1918-01-31 in.nc jan.nc
除此之外,NCO 目前没有更优雅的方法支持。
从问题中我不清楚您的月度文件是否包含每日数据。即您有 12 个文件,每个文件包含每日(或更精细)时间分辨率信息。如果是这种情况,那么我认为使用 cdo 可以很容易地做到这一点
cdo splitday input.nc output.nc
你最终会得到许多文件,每个文件都有一天的数据,每个月的天数会自动为你处理。