7 NA与NULL值
NA的使用
NA是指缺失值
> x<-c(88,NA,12,168,13)
> x
[1] 88 NA 12 168 13
> mean(x)
[1] NA
> mean(x,na.rm=T)
[1] 70.25
有缺失值,无法计算mean()均值,但通过把可选的参数na.rm(意思是移除NA)设置为真(T),可以计算其余元素的均值,
> X<-c(5,NA,12)> mode(x[1])
[1] "numeric"
> mode(x[2])
[1] "numeric"
> mode(y[2])
[1] "numeric"
> y<-c("abc","def",NA)
> mode(y[2])
[1] "character"
> mode(y[3])
[1] "character"
NA值的模式与向量中其他元素的模式是一样的。
NULL的使用
> z<-NULL
> for(i in 1:10) if(i%%2==0) z<-c(z,i)
> z
[1] 2 4 6 8 10
> seq(2,10,2)
[1] 2 4 6 8 10
> 2*1:5
[1] 2 4 6 8 10
换成另外一个例子关于NA的
> z<-NA
> for(i in 1:10) if(i%%2==0) z<-c(z,i)
> z
[1] NA 2 4 6 8 10
> u<-NULL
> length(u)
[1] 0
> v<-NA
> length(v)
[1] 1
对比上面的关于NULL的例子,较为容易理解,主要是NA占了一个长度。