小编Mik*_*sin的帖子

条件计算均值

我想计算每个因子的数据框的平均值,但仅在满足某些条件时才计算.例如,我有这个数据框:

> 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)

r dplyr

10
推荐指数
1
解决办法
402
查看次数

标签 统计

dplyr ×1

r ×1