有没有快速的方法来了解netcdf文件中有多少缺失值?可能使用R。
目前我必须
hum<-nc_open("rhum.sig995.2008.nc")
rhum<-ncvar_get(hum, "rhum")
然后输入&#39; hum&#39;手动查找缺失的值。并将其复制到此操作
sum(abs(rhum - 9.96920996838687e+36) < -9.96920996838687e+36)
是否有更直接的方式,特别是如果我必须使用数百个文件?我想避免复制和粘贴缺失的值,而且我也不确定应该处理该数字的精度。
答案 0 :(得分:2)
变量名称“var”的缺失数据点总数可以使用
存储在新的附加变量中ncap2 -s "nmiss=number_miss(var)" in.nc out.nc
或
ncap2 -s "nmiss=var.number_miss()" in.nc out.nc
如果您的数据有时间维度,并且您想要查看空间维度上总计的缺失点总数,那么您可以看到
cdo info in.nc
答案 1 :(得分:1)
我的建议是使用优秀的光栅包:
install.packages(raster)
library(raster)
r <- raster("rhum.sig995.2008.nc", var="rhum")
NAnum <- summary(r)[6]