我想计算每个因子的数据框的平均值,但仅在满足某些条件时才计算.例如,我有这个数据框:
> df <- data.frame(name = rep(c("A", "B", "C"), 20),
variable1 = rep(c(1, 1, 1, 1, 1, NA), 10),
variable2 = rep(c(2, NA, 2, 2, 2, 2), 10),
variable3 = rep(c(NA, 3, 3, 3, 3, 3), 10))
> table(df$name, df$variable1)
1
A 20
B 20
C 10
> table(df$name, df$variable2)
2
A 20
B 10
C 20
> table(df$name, df$variable3)
3
A 10
B 20
C 20
Run Code Online (Sandbox Code Playgroud)
我可以dplyr
通过以下方式轻松计算每个变量的均值:
means <- df %>%
group_by(name) %>%
summarise_each(funs(mean(., na.rm = TRUE))) …
Run Code Online (Sandbox Code Playgroud)