如何将重复的值相加并将所有行保留在R上
我有一个这样的数据集如何将重复的值相加并将所有行保留在R上,r,aggregate,R,Aggregate,我有一个这样的数据集 V0 V1 V2 1 A 21 2 A 21 3 B 22 4 C 23 5 C 23 因此V1中存在重复值;我想创建一个这样的数据集,对V2进行汇总,但将重复项保留在V1中: V0 V1 V2 1 A 42 2 A 42 3 B 22 4 C 46 5 C 46 谢谢我们可以使用ave来自base R df1$V2 <- with(df1,
V0 V1 V2
1 A 21
2 A 21
3 B 22
4 C 23
5 C 23
因此V1中存在重复值;我想创建一个这样的数据集,对V2进行汇总,但将重复项保留在V1中:
V0 V1 V2
1 A 42
2 A 42
3 B 22
4 C 46
5 C 46
谢谢我们可以使用
ave
来自base R
df1$V2 <- with(df1, ave(V2, V1, FUN = sum))
我们也可以使用
data.table
library(data.table)
setDT(dt)[,V2:=sum(V2),by=V1]
library(data.table)
setDT(dt)[,V2:=sum(V2),by=V1]