使用dplyr汇总一个变量,并根据其他变量计算另一个变量的平均值

使用dplyr汇总一个变量,并根据其他变量计算另一个变量的平均值,r,dplyr,R,Dplyr,在下面的数据集中,我想汇总按城市和日期分组的租金,并另外计算按日期+城市分组的平均持续时间 date rentals City duration <date> <dbl> <fct> <drtn> 1 2014-01-01 1 Hamburg 15 mins 2 2014-01-01 1 Hamburg

在下面的数据集中,我想汇总按城市和日期分组的租金,并另外计算按日期+城市分组的平均持续时间

   date       rentals  City          duration  
   <date>       <dbl> <fct>            <drtn> 
 1 2014-01-01       1 Hamburg          15 mins
 2 2014-01-01       1 Hamburg          18 mins
 3 2014-01-01       1 Vienna          13 mins
 4 2014-01-02       1 Vienna           1 mins
 5 2014-01-02       1 Hamburg           8 mins
 6 2014-01-02       1 Berlin           4 mins
 7 2014-01-03       1 Hamburg          13 mins
 8 2014-01-03       1 Hamburg           2 mins
 9 2014-01-03       1 Berlin            4 mins
10 2014-01-04       1 Hamburg          17 mins
...
日期租赁城市持续时间
1 2014-01-01汉堡15分钟
2 2014-01-01汉堡18分钟
3 2014-01-01 1维也纳13分钟
4 2014-01-02维也纳1分钟
5 2014-01-02汉堡8分钟
6 2014-01-02柏林1号4分钟
7 2014-01-03汉堡13分钟
8 2014-01-03汉堡2分钟
9 2014-01-03柏林1号4分钟
10 2014-01-04汉堡17分钟
...
我想使用dplyr并尝试了以下操作:

df <- df %>%
  group_by(date, city) %>% 
  summarise((rentals=sum(rentals)), duration=mean(duration))
df%
分组单位(日期、城市)%>%
总结((租金=总和(租金)),持续时间=平均(持续时间))
最后我只剩下一行总结租金和平均总工期。似乎它只是忽略了我的分组功能


如果能得到一些帮助就太好了:)

我想你只是没有正确地利用城市。这对我很有用:

library(dplyr)

df <- read.table(text = "date       rentals  City          duration  
                 1 2014-01-01       1 Hamburg          15 
                 2 2014-01-01       1 Hamburg          18 
                 3 2014-01-01       1 Vienna          13 
                 4 2014-01-02       1 Vienna           1 
                 5 2014-01-02       1 Hamburg           8 
                 6 2014-01-02       1 Berlin           4 
                 7 2014-01-03       1 Hamburg          13 
                 8 2014-01-03       1 Hamburg           2 
                 9 2014-01-03       1 Berlin            4 
                 10 2014-01-04       1 Hamburg          17 ")

df2 <- df %>%
  group_by(date, City) %>% 
  summarise(rentals=sum(rentals), duration=mean(duration))
库(dplyr)
df%
总结(租金=总和(租金),持续时间=平均(持续时间))
df2输出:

# A tibble: 8 x 4
# Groups:   date [4]
  date       City    rentals duration
  <chr>      <chr>     <int>    <dbl>
1 2014-01-01 Hamburg       2     16.5
2 2014-01-01 Vienna        1     13  
3 2014-01-02 Berlin        1      4  
4 2014-01-02 Hamburg       1      8  
5 2014-01-02 Vienna        1      1  
6 2014-01-03 Berlin        1      4  
7 2014-01-03 Hamburg       2      7.5
8 2014-01-04 Hamburg       1     17  
#一个tible:8 x 4
#分组:日期[4]
日期城市租金期限
1 2014-01-01汉堡2 16.5
2 2014-01-01维也纳1 13
3 2014-01-02柏林1 4
4 2014-01-02汉堡18
5 2014-01-02维也纳1
6 2014-01-03柏林1 4
7 2014-01-03汉堡27.5
8 2014-01-04汉堡117

根据您的df,您的
分组人
需要大写
城市
。谢谢。这不完全是我的问题,因为我调整了我的帖子的名称以使其更容易理解(初学者的错误…),但当我将你的代码复制到一个空白文件中时,它也对我有效。我发现了错误:当我写“dplyr::summary”时,它成功了!似乎我有一个库覆盖了这个函数,对吗?是的,你必须有另一个包,它是
摘要
的“首选”。很高兴你找到了解决办法!