【问题标题】:Using nco to convert NetCDF file with monthly data into daily files使用 nco 将带有月数据的 NetCDF 文件转换为日文件
【发布时间】:2017-01-31 21:16:32
【问题描述】:

我有一年的数据作为每月的 NetCDF 文件,我想将它们变成每日文件。我知道我可以使用 ncks 提取 24 小时,像这样

ncks -d time,0,23 -o output.nc input.nc

但我想自动将整个月分成几天,而不必担心每个月的天数等等。是否有捷径可寻? (我当然可以编写一个调用 ncks 的 python 脚本或类似的脚本,但避免这种情况会更优雅。)

【问题讨论】:

    标签: netcdf nco


    【解决方案1】:

    NCO -d hyperslab 开关可以理解 UDUnits 格式的日期。如果您的输入文件包含格式良好的时间单位属性,那么编写十二个命令应该没有问题,每个命令都带有一个日期超平板,例如

    ncks -d time,1918-01-01,1918-01-31 in.nc jan.nc
    

    除此之外,NCO 目前没有更优雅的方法支持。

    【讨论】:

    • 很高兴知道,我不知道。不过,这并不是我所希望的,因为它仍然需要我使用其他工具来构建命令。我在想一些可以让我说“将这个文件分成每个 24 小时的块,不管可能有多少块”。
    【解决方案2】:

    我不清楚您的月度文件是否包含每日数据。即您有 12 个文件,每个文件包含每日(或更精细)时间分辨率信息。如果是这种情况,那么我认为使用 cdo 使用

    您想要做的事情很容易
    cdo splitday input.nc output.nc 
    

    你最终会得到许多文件,每个文件都有一天的数据,每个月的天数会自动为你处理。

    【讨论】:

    • 看起来很棒!正是我想要的。
    猜你喜欢
    • 2018-01-18
    • 2014-12-02
    • 2017-02-14
    • 2018-09-02
    • 2021-06-21
    • 2018-12-24
    • 2021-06-02
    • 2013-06-28
    • 1970-01-01
    相关资源
    最近更新 更多