gpt4 book ai didi

r - 按两个变量对最低分数进行分组

转载 作者:行者123 更新时间:2023-12-01 16:36:23 25 4
gpt4 key购买 nike

我有一个看起来像这样的表

uid gid score
1 a 5
1 a 8
1 a 9
1 b 2
1 b 7
2 a 5
2 a 9
.
.
.

但是每个用户和组都有更多的条目。

我想得到一个表,其中每个 uid/gid 配对都有一行,这是他们最后 5 个分数的平均值。

这在使用数据透视表的 Excel 中是微不足道的,但我需要做一些分析,R 更适合。

所以我希望我的结果看起来像

uid gid top5avg
1 a 4.3
1 b 5.7
2 a 3.5
2 b 6.8
.
.
.

每个 uid gid 对一行,然后是该 uid/gid 对的前五个分数的平均值。

最佳答案

这在 R 中更加微不足道,假设您的数据框称为 dat 并且您真正指的是后 5 分(即使您的示例建议前 5 分):

library(plyr)
ddply(dat,.(uid,gid),summarise,bottom5avg = mean(tail(sort(score),5)))

请注意,此代码假定每组中至少有 5 个观察值。

关于r - 按两个变量对最低分数进行分组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10560437/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com