读取nc文件中的变量,计算并存入新创建的nc文件中
;读取数据和指定变量
fin = addfile("../testnc/longtime_test.rtm.h0.2010-12.nc", "r")
temp = fin->QCHANR ; 读取QCHANR变量到temp
printVarSummary(temp) ; (long_name, units, _FillValue)
; 进行简单的距平计算
data = temp - avg(temp) ;
copy_VarMeta(temp, data) ; 将temp的元数据(属性和坐标)复制给data变量
data@long_name = "RTM river flow: LIQ"
data@short_name = "QLIQ"
system("rm -rf Q_test.nc") ; 删除可能存在的文件
fout = addfile("Q_test.nc", "c") ; 用“c”创建文件,用“r”可以将新的变量添加到已有的文件中
fout@title = "NecCDF output using method01" ; 给文件定义一些全局属性
fout@creation_date = systemfunc("date") ; 对文件做简要描述
filedimdef(fout,"time", -1, True) ; 如果有时间维,建议将其设定为不限定维度,以备后续时次继续添加
fout->QLIQ = data ; 使用 -> 将变量写入文件,可以使用不同变量名
nc文件创建在当前的目录下,可以通过ncdump -h Q_test.nc 来查看。
Reference
http://blog.sina.com.cn/s/blog_e7d0ac340102w3co.html