首页 文章

dplyr:组数的平均值

提问于
浏览
2

我试图使用dplyr在数据帧上找到变量的平均长度:

x <- data %>% group_by(Date, `% Bucket`) %>% summarise(count = n())

Date          % Bucket count
(date)    (fctr) (int)
1  2015-01-05       <=1  1566
2  2015-01-05    (1-25]   421
3  2015-01-05   (25-50]   461
4  2015-01-05   (50-75]   485
5  2015-01-05  (75-100]   662
6  2015-01-05 (100-150]  1693
7  2015-01-05      >150 12359
8  2015-01-13       <=1  1608
9  2015-01-13    (1-25]   441
10 2015-01-13   (25-50]   425

如何使用 dplyr 汇总以查找全年 % Bucket 的平均值?

in base:
x <- as.data.frame(x)
aggregate(count ~ `% Bucket`, data = x, FUN=mean)

% Bucket      count
1       <=1  2609.5294
2    (1-25]   449.0000
3   (25-50]   528.7059
4   (50-75]   593.2157
5  (75-100]   763.0000
6 (100-150]  1758.6667
7      >150 12457.9216

聚合函数将获取dplyr在上面每个桶中找到的计数并将它们相加,除以包含该 % Bucket 变量的行数并给出上面的答案 . 我怎么能用dplyr完成这个呢?这不是关于完成问题,而是了解如何在这种情况下使用dplyr包 .

这类事物的另一个例子是每个 group_by 变量的 summarise n() ,并列出52周内该变量的最小长度"count" .

我正在努力,因为dplyr似乎是为了在列中找到值的平均值而构建的,但是在这里我计算了列中给出变量并尝试查找平均值,最小值,最大值等的行出现次数 . 它 .

1 回答

  • 2

    我们可以使用 dplyr 方法

    library(dplyr)
    x %>%
       group_by(`% Bucket`) %>%
       summarise(count= mean(count))
    

相关问题