8wDlpd.png
8wDFp9.png
8wDEOx.png
8wDMfH.png
8wDKte.png

按组计算平均值

Thomas Wouters 1月前

44 0

我有一个类似于此的大型数据框:df <- data.frame(dive = factor(sample(c(\'dive1\',\'dive2\'), 10, replace=TRUE)), speed = runif(10) ...

我有一个与此类似的大数据框:

df <- data.frame(dive = factor(sample(c("dive1","dive2"), 10, replace=TRUE)),
                 speed = runif(10)
                 )
> df
    dive      speed
1  dive1 0.80668490
2  dive1 0.53349584
3  dive2 0.07571784
4  dive2 0.39518628
5  dive1 0.84557955
6  dive1 0.69121443
7  dive1 0.38124950
8  dive2 0.22536126
9  dive1 0.04704750
10 dive2 0.93561651

我的目标是当另一列等于某个值时获取一列值的平均值,并对所有值重复此操作。即在上面的例子中,我想为该列 speed 的每个唯一值 dive 。因此 dive==dive1 ,当的平均值 speed 是这样的,对于每个值也是如此 dive .

帖子版权声明 1、本帖标题:按组计算平均值
    本站网址:http://xjnalaquan.com/
2、本网站的资源部分来源于网络,如有侵权,请联系站长进行删除处理。
3、会员发帖仅代表会员个人观点,并不代表本站赞同其观点和对其真实性负责。
4、本站一律禁止以任何方式发布或转载任何违法的相关信息,访客发现请向站长举报
5、站长邮箱:yeweds@126.com 除非注明,本帖由Thomas Wouters在本站《for-loop》版块原创发布, 转载请注明出处!
最新回复 (0)
  • 使用 collapse

    library(collapse)
    library(magrittr)
    df %>% 
       fgroup_by(dive) %>%
       fsummarise(speed = fmean(speed))
    #   dive     speed
    #1 dive1 0.5788479
    #2 dive2 0.4401514
    

    数据

    set.seed(123)
    df <- data.frame(dive=factor(sample(c("dive1","dive2"),10,replace=TRUE)),
                 speed=runif(10))
    
返回
作者最近主题: