由多个条件聚合函数dplyr组成的R组

由多个条件聚合函数dplyr组成的R组,r,dataframe,group-by,dplyr,summarize,R,Dataframe,Group By,Dplyr,Summarize,我正在搜索在一组条件下计算函数agg_name描述了要计算的函数,这个向量的长度可以是1到N。这里N=5,所有的可能性都是已知的,但我更喜欢一般的 agg_name <- c("Sum = sum(val)", "Mean = mean(val)") df <- data.frame(dateDay = Sys.Date()-rep(0:2, each = 3), val = 1:9) 如果agg\u name包含Max=Max(val),则会创建另一列 非常感谢您的帮助。您可以

我正在搜索在一组条件下计算函数
agg_name
描述了要计算的函数,这个向量的长度可以是1到N。这里N=5,所有的可能性都是已知的,但我更喜欢一般的

agg_name <- c("Sum = sum(val)", "Mean = mean(val)")

df <- data.frame(dateDay = Sys.Date()-rep(0:2, each = 3), val = 1:9)
如果
agg\u name
包含
Max=Max(val)
,则会创建另一列

非常感谢您的帮助。

您可以:

agg_name <- c(Sum = sum, Mean = mean)

df %>% 
 group_by(dateDay) %>% 
 summarise_all(agg_name)

  dateDay      Sum  Mean
  <date>     <int> <dbl>
1 2019-09-02    24     8
2 2019-09-03    15     5
3 2019-09-04     6     2
agg_name%
分组依据(日期)%>%
汇总所有(集团名称)
日期和平均值
1 2019-09-02    24     8
2 2019-09-03    15     5
3 2019-09-04     6     2

正是我需要的,非常感谢。我知道我的审判对我来说太复杂了。
     dateDay Sum Mean
1 2019-09-04   6    2
2 2019-09-03   15   5
3 2019-09-02   24   8
agg_name <- c(Sum = sum, Mean = mean)

df %>% 
 group_by(dateDay) %>% 
 summarise_all(agg_name)

  dateDay      Sum  Mean
  <date>     <int> <dbl>
1 2019-09-02    24     8
2 2019-09-03    15     5
3 2019-09-04     6     2