关于 dplyr 包中的 r:summarise 与 summarise_each 函数

summarise vs. summarise_each function in dplyr package

我正在尝试使用 dplyr 包将数据与 group_by 拆分后总结一个变量的值,以下代码工作正常,输出如下所示,但我不能用 summriase 替换 summarise_each 甚至只有一个列需要计算,不知道为什么?

1
2
   iris %>% group_by(Species) %>% select(one_of('Sepal.Length')) %>%
                       summarise_each(funs(mean(.)))

或者我会得到类似"S3:lazy"的输出。


summarizesummarize_each 的工作方式完全不同。 summarize 实际上更简单——只需直接指定表达式:

1
2
3
4
iris %>%
    group_by(Species) %>%
    select(Sepal.Length) %>%
    summarize(Sepal.Length = mean(Sepal.Length))

您可以为输出列选择任何名称,它不需要与输入相同。