數據中有NA存在,處理辦法


如果數據中有NA存在,表示這個位置數據遺失,不能進行值的類型描述。也不能用函數來計算,需要計算是可以加上na.rm=T表示忽略NA,但是這個位置並沒有去除,使用length可以看到。

> x<-c(10,20,30,NA)

> x

[1] 10 20 30 NA

> mean(x)

[1] NA

> mean(x,na.rm=T)

[1] 20

> length(x)

[1] 4

>  x<-c(10,20,30,NA)

> x

[1] 10 20 30 NA

> na.fail(x)  #判斷至少存在一個NA則返回錯誤

Error in na.fail.default(x) : 對象里有遺漏值

> na.omit(x)  #返回刪除NA后的向量

[1] 10 20 30

attr(,"na.action")

[1] 4

attr(,"class")

[1] "omit"

> is.na(x)  #判斷向量或矩陣或是數據框中的NA

[1] FALSE FALSE FALSE  TRUE

> x[!is.na(x)]#!與is.na()配合使用除去NA

[1] 10 20 30


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM