发布
社区首页 >问答首页 >ncdf缺少值

ncdf缺少值
EN

Stack Overflow用户
提问于 2013-01-24 05:51:45
回答 2查看 188关注 0票数 0

我尝试读取一个ncdf文件,在标题中写着缺少的值是"Missval:1e+30“,但在数据中我看到了9999。我检查了linux中的ncdump,它没有问题。以及由此识别的缺失价值。我如何处理这样的问题,以摆脱缺失值?

代码语言:javascript
代码运行次数:0
复制
head(get.var.ncdf(nc,4))

1 9999 9999 9999

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-01-24 07:01:27

R使用特殊符号NA对缺少的值进行编码。

如果您的数据有9999个要编码的缺失值,那么您的元数据头是错误的,您必须手动替换它们。通常,您将执行以下操作:

代码语言:javascript
代码运行次数:0
复制
 > x = c(1,2,3,9999,55,9999)
 > x[x==9999] <- NA
 > x
 [1] 1 2 3 NA 55 NA

矩阵对象的替换是相似的。和基本的R类东西。

您的数据中可能已经有一些NA值,以及9999个值。检查any(is.na(x)) -如果为真,则其中至少有一个NA (可能来自报头中缺少的数据值)。

票数 1
EN

Stack Overflow用户

发布于 2013-01-24 22:53:17

我找到了答案,问题来自于软件包"ncdf“,但现在我安装了"RNetCDF”。

包和所有的东西都运行得很好。

代码语言:javascript
代码运行次数:0
复制
head(var.get.nc(nc,5))

1 NA NA

但我发现有时找到好的包是很棘手的。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14490082

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档