R 中的 na.omit 和 complete.cases 有什麼區別?
na.omit 函式會刪除資料框中的所有缺失值,而 complete.cases 在應用於整個資料框時也會做同樣的事情。兩者之間的主要區別在於,complete.cases 可應用於某些列或行。請檢視以下示例以瞭解區別。
示例
考慮以下資料框
> set.seed(2584) > x<-sample(c(NA,2,8,6,5,4),20,replace=TRUE) > y<-sample(c(NA,5,25),20,replace=TRUE) > df<-data.frame(x,y) > df
輸出
x y 1 NA 25 2 5 5 3 8 NA 4 6 5 5 4 NA 6 4 5 7 6 NA 8 4 NA 9 4 5 10 8 5 11 8 5 12 6 25 13 5 25 14 6 5 15 5 5 16 4 5 17 NA 25 18 8 NA 19 4 NA 20 8 5
將 na.omit 應用於 df
示例
> na.omit(df)
輸出
x y 2 5 5 4 6 5 6 4 5 9 4 5 10 8 5 11 8 5 12 6 25 13 5 25 14 6 5 15 5 5 16 4 5 20 8 5
將 complete.cases 應用於 df
示例
> df[complete.cases(df),]
輸出
x y 2 5 5 4 6 5 6 4 5 9 4 5 10 8 5 11 8 5 12 6 25 13 5 25 14 6 5 15 5 5 16 4 5 20 8 5
將 complete.cases 應用於 df 以僅刪除列 1 中的缺失值
示例
> df[complete.cases(df[,1]),]
輸出
x y 2 5 5 3 8 NA 4 6 5 5 4 NA 6 4 5 7 6 NA 8 4 NA 9 4 5 10 8 5 11 8 5 12 6 25 13 5 25 14 6 5 15 5 5 16 4 5 18 8 NA 19 4 NA 20 8 5
將 complete.cases 應用於 df 以僅刪除列 2 中的缺失值
示例
> df[complete.cases(df[,2]),]
輸出
x y 1 NA 25 2 5 5 4 6 5 6 4 5 9 4 5 10 8 5 11 8 5 12 6 25 13 5 25 14 6 5 15 5 5 16 4 5 17 NA 25 20 8 5
廣告
資料結構
網路
RDBMS
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP