我在使用R方面非常新,目前我正在尝试使用它来提取netCDF文件的特定区域的数据,并将其转换为csv。最后,我想为我感兴趣的领域的每个变量设置一个时刻表。
我已经下载了用于R的包ncdf和clim.pact,而且由于我的netCDF文件相当大(25年来的每日数据),我认为我应该能够使用cdfextract提取感兴趣区域的数据,然后我将把这个较小的文件转换为csv。但是,当我试图运行它时,我仍然会得到相同的错误。这就是我一直在使用的脚本以及出现的错误:
cdfextract("file.nc","tas", x.rng=c(-93, -85), y.rng=c(16, 23),t.rng=c(1, 9125))1 "time.origin= 01 1月0850“系统错误(”rm -f cdfcont.txt",intern = TRUE):“rm”未找到
其中我的文件是file.nc,感兴趣的变量是tas。我认为它可能与时间格式有关,但当我检查文件的时间单位时,它说它在“从0850 1月1日开始的日子”,所以我认为这些单位是正确的。
无论如何,任何关于这个问题的评论都是非常欢迎的!谢谢!
发布于 2015-06-10 22:58:48
如果不必使用R,则可以使用NCO包中的ncks:http://nco.sourceforge.net/nco.html#ncks-netCDF-Kitchen-Sink
ncks是一个很好的命令行工具,可以从netCDF文件中提取数据。通常,您可以从某些lat/lon波段提取变量,然后使用以下方法将数据输出到.csv文件中:
ncks -v tas -d lat,16.,23. -d lon,-93.,-85. -s '%f\n' file.nc > output.csv我不知道你是否想要一个面积平均值,首先是tas的平均值,然后是那个面积的时间序列,.csv文件中的平均数量。如果是这样的话,您将需要使用ncwa首先执行面积平均:http://nco.sourceforge.net/nco.html#Averaging
https://stackoverflow.com/questions/30768294
复制相似问题