以下是一个示例代码,用于按因子分组并计算每个组中NA值的数量:
# 创建示例数据
df <- data.frame(
group = c("A", "A", "B", "B", "B", "C", "C"),
value = c(1, NA, NA, 2, 3, NA, 4)
)
# 使用dplyr包按组计算NA值的数量
library(dplyr)
df %>%
group_by(group) %>%
summarize(na_count = sum(is.na(value)))
# 输出结果:
# group na_count
# 1 A 1
# 2 B 2
# 3 C 1
上述代码首先创建了一个包含组和值的数据框。然后,使用dplyr包中的group_by()
函数按组对数据框进行分组。接下来,使用summarize()
函数计算每个组中NA值的数量。在summarize()
函数中,使用is.na()
函数将缺失值转换为逻辑值(TRUE或FALSE),然后使用sum()
函数计算逻辑值为TRUE的数量,即NA值的数量。最后,输出按因子分组的NA计数结果。
请注意,上述代码需要先安装并加载dplyr包,可以使用install.packages("dplyr")
安装该包。