是否有 NCO 命令来更改 netcdf 中变量的时间戳?

问题描述

我有一个 netcdf 文件,其中包含每日最高气温、时间、纬度和经度。我使用 nco 命令成功地从 6 小时温度的 netcdf 中获得了最高温度:

ncra -y max --mro -d time,4,4 6hourly.nc max.nc"

唯一的问题是,我的时间步长仍然分为四分之一天:

变量:

ref TestStruct structAgain = ref MemoryMarshal.AsRef<TestStruct>(byteSpan1);

我的问题是,如何将变量 tair 中 'days\ since\ 850' 属性的时间步长更改为整数?

谢谢!

夏洛特

解决方法

ncap2 可以使用属性。但是,您有一个特别棘手的问题,因为您的属性名称包含空格,并且属性值是一个数组。我认为在这种情况下,您需要先重命名属性,然后对其进行操作。 (然后您可以根据需要将其重命名。):

<console>:73: error: not found: value MutableList
       val ReviewsList = MutableList [Review]()

编辑 20210209 以回答以下评论: 要将属性从一个变量复制到另一个变量,请尝试

ncrename -O -a "tair@days since 850",tair@days_since_850 in.nc foo.nc
ncap2 -O -s 'tair@days_since_850=int(tair@days_since_850)' foo.nc out.nc
,

如果有人有类似的问题,这最终对我有用:

ncap2 -s 'time=array(0,1,$time)' outmax.nc outmax2.nc
ncap2 -s 'time=array(0,$time)' outmin.nc outmin2.nc

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...