找回密码
 注册
查看: 9703|回复: 0

R语言处理数据的时候,有缺失值怎么办

[复制链接]
发表于 2011-1-22 20:14:32 | 显示全部楼层 |阅读模式
在某些情况下,向量的元素可能有残缺。当一个元素或者值在统计的时候\不可
得到"(not available)或者\值丢失" (missing value),相关位置可能会被保留并且
赋予一个特定的值NA5。任何含有NA 数据的运算结果都将是NA。这样做法的道理很简
单,如果一次操作的数据都是残缺的,那么结果也必然是不可预料的,因此也是不可
得到的。
函数is.na(x) 返回一个和x 同等长度的向量。它的某个元素值为TRUE 当且仅当x
中对应元素是NA。
> z <- c(1:3,NA); ind <- is.na(z)
特别要注意的是逻辑表达式x == NA 和is.na(x) 完全不同。因为NA 不是一个真
实的值而是一个符号以表示某个量是不可得到的, 因此x == NA 得到的是一个长度和x
一致的向量。它的所有元素的值都是NA。因为该逻辑表达式本身不完整,因此也是不
可判断的。
还要注意数值计算会产生第二种\缺损"值,也称为非数值(Not a Number)NaN
。例如,
> 0/0
或者
> Inf - Inf
得到的都是NaN,这是因为它们的结果都不能显式的定义。
总之,对于NA 和NaN 用is.na(xx) 检验都是TRUE。为了区分它们,is.nan(xx)
就只对是NaN 元素显示TRUE。
当字符向量以没有引号的形式显示时,缺损值可能会以<NA> 形式显示6。
> a<-c("a","b",NA)
> a
[1] "a" "b" NA
> print(a,quote=F)
[1] a b <NA>

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|小黑屋|生物统计家园 网站价格

GMT+8, 2025-5-2 16:16 , Processed in 0.028473 second(s), 16 queries .

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表