如何在R中使用聚合函数

7

您好,我可以帮助您如何正确使用R中的聚合函数吗?

我有这样的数据:

SPORT   FLOWS
[1,] "Other" "1"  
[2,] "Other" "1"  
[3,] "Other" "1"  
[4,] "Other" "1"  
[5,] "Other2" "1"  
[6,] "Other2" "1"

我需要获取这个:

SPORT   FLOWS
[1,] "Other" "4"
[2,] "Other2" "2"

我发现可以使用聚合函数来完成,但它不起作用。

谢谢大家,我已经标记了对我有用的答案。


1
СйаТюђтцДуџёжЌ«жбўТў»FLOWSуџёу▒╗тъІТў»characterсђѓ - Señor O
此外,您可能会对plyr软件包的数据折叠功能感兴趣。 - stanekam
3个回答

5
aggregate(FLOWS ~ SPORT, dat, function(x) sum(as.numeric(x)))

这里的 dat 是您矩阵的名称。

在这里,函数 is.numeric 是必要的,以将第二列转换为数字。


1
假设你的数据框命名为 "sport_data",我认为你只需要这样做:
aggregate(sport_data, sport_data$SPORT, sum)

如果您只有个别计数(全部都等于1),那么“tabulate”可能是一个更简单的选项。
请告诉我们您遇到了什么样的错误。(如果这不起作用,或者在您的问题中将来出现)

0

尝试在R中使用聚合函数

test <- aggregate(df[,4:5] ,by=list(df$name),sum)

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接