如何在 r 中查找和计算缺失值(附示例)
您可以使用以下方法来查找和统计R中的缺失值:
方法 1:查找缺失值的位置
which( is.na (df$column_name))
方法 2:统计缺失值总数
sum( is.na (df$column_name))
以下示例展示了如何在实践中使用这些功能。
示例1:查找并统计列中的缺失值
假设我们有以下数据框:
#create data frame
df <- data. frame (team=c('A', 'B', 'C', NA, 'E'),
points=c(99, 90, 86, 88, 95),
assists=c(NA, 28, NA, NA, 34),
rebounds=c(30, 28, 24, 24, NA))
#view data frame
df
team points assists rebounds
1 A 99 NA 30
2 B 90 28 28
3 C 86 NA 24
4 NA 88 NA 24
5 E 95 34 NA
我们可以使用下面的代码来识别“assist”列中存在缺失值的位置,并找出“assist”列中缺失值的总数:
#identify locations of missing values in 'assists' column
which( is.na (df$assists))
[1] 1 3 4
#count total missing values in 'assists' column
sum( is.na (df$assists))
[1] 3
从结果中我们可以看到,位置1、3、4在“assists”列中存在缺失值,该列中总共有3 个缺失值。
示例2:统计所有列中的缺失值
下面的代码展示了如何统计数据框每一列中的总缺失值:
#create data frame
df <- data. frame (team=c('A', 'B', 'C', NA, 'E'),
points=c(99, 90, 86, 88, 95),
assists=c(NA, 28, NA, NA, 34),
rebounds=c(30, 28, 24, 24, NA))
#count total missing values in each column of data frame
sapply(df, function (x) sum(is. na (x)))
team points assists rebounds
1 0 3 1
从结果我们可以看出:
- “团队”列有1 个缺失值。
- “点”列包含0 个缺失值。
- “协助”列有3 个缺失值。
- “篮板数”列有1 个缺失值。
示例3:统计整个数据框中的缺失值
下面的代码展示了如何统计整个数据框中的总缺失值:
#create data frame
df <- data. frame (team=c('A', 'B', 'C', NA, 'E'),
points=c(99, 90, 86, 88, 95),
assists=c(NA, 28, NA, NA, 34),
rebounds=c(30, 28, 24, 24, NA))
#count total missing values in entire data frame
sum( is.na (df))
[1] 5
从结果中我们可以看到整个数据框中总共有5个缺失值。
其他资源
以下教程解释了如何在 R 中执行缺失值的其他常见操作: