在 R 中按行分组和求和

Group and sum by row in R

这是我在 Stack 上的第一个问题。我正在寻找一种有效的方法来对一行内的值进行分组和求和。 我的行数据是这样分布的:10000 10 20000 20 40000 12 60000 23 10000 12 40000 17。 我需要一个结果:10000 22 20000 20 40000 29 60000 23。大数字是特征,小数字是出现。

那是我的真实数据 - 例如 10004 我需要 23。 我试过循环、聚合,但我做不到。

您可以使用 aggregate

## Your data
Row = c(11131132, 10004, 5, 265098, 3, 190029, 2, 
    265092, 2, 265077, 17, 10004, 18, 
    265097,17, 265098,15,190029,2, 265099,17)

ID    = Row[seq(2,length(Row), 2)]
value = Row[seq(3,length(Row), 2)]
GroupSum = aggregate(value, list(ID), sum)
GroupSum
  Group.1  x
1   10004 23
2  190029  4
3  265077 17
4  265092  2
5  265097 17
6  265098 18
7  265099 17