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

按组计算平均值

papercrane 1月前

66 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 除非注明,本帖由papercrane在本站《for-loop》版块原创发布, 转载请注明出处!
最新回复 (0)
  • 我们已经有大量的选项可以通过组来获取,再从 mosaic 包中添加一个。

    mosaic::mean(speed~dive, data = df)
    #dive1 dive2 
    #0.579 0.440 
    

    这将返回一个命名的数字向量,如果需要数据框,我们可以将其包装在其中 stack

    stack(mosaic::mean(speed~dive, data = df))
    
    #  values   ind
    #1  0.579 dive1
    #2  0.440 dive2
    

    数据

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