如何在 R 数据框的每一列中查找 NA 的数量?
有时数据框中充满了过多的缺失值/NA,并且数据框的每一列都至少包含一个 NA。在这种情况下,我们可能希望找出每列中存在多少个缺失值。因此,我们可以使用 colSums 函数以及 is.na 以如下方式:colSums(is.na(df)) #这里 df 指的是数据框名称。
考虑以下数据框 -
示例
set.seed(109) x1<-sample(c(0:1,NA),20,replace=TRUE) x2<-sample(c(rpois(5,2),NA),20,replace=TRUE)df1<-data.frame(x1,x2) df1
输出
x1 x2 1 0 1 2 1 NA 3 NA 0 4 NA 0 5 1 1 6 1 1 7 NA NA 8 NA NA 9 0 1 10 NA 1 11 1 1 12 0 1 13 NA 1 14 0 0 15 1 1 16 NA 0 17 1 1 18 1 NA 19 NA NA 20 0 0
查找数据框 df1 中每一列中 NA 的数量 -
示例
colSums(is.na(df1))
输出
x1 x2 6 4
让我们看看另一个例子 -
示例
y1<-sample(c(100,105,NA,115,120),20,replace=TRUE) y2<-sample(c(rnorm(3,1,0.04),NA),20,replace=TRUE) df2<-data.frame(y1,y2) df2
输出
y1 y2 1 NA NA 2 NA NA 3 105 NA 4 115 0.9910075 5 120 NA 6 120 0.9547570 7 105 0.9547570 8 105 1.0468139 9 120 0.9910075 10 115 0.9547570 11 115 0.9910075 12 100 0.9910075 13 NA 1.0468139 14 120 1.0468139 15 NA 1.0468139 16 115 NA 17 115 1.0468139 18 100 NA 19 120 0.9910075 20 120 0.9910075
查找数据框 df2 中每一列中 NA 的数量 -
示例
colSums(is.na(df2))
输出
y1 y2 3 3
广告