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 y1 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 y2 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 y2 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 y2 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 y1 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
以上是 R中的na.omit和complete.cases有什么区别? 的全部内容, 来源链接: utcz.com/z/354924.html