【发布时间】:2020-06-10 13:48:47
【问题描述】:
df
var1 var2
1 a 1
2 b 2
3 a 3
4 c 6
5 d 88
6 b 0
df2 <- data.frame(var1=c("k","b","a","k","k","b"),var2=c(14,78,5,6,88,0))
> list <- list(df,df2)
for(i in list){
if(any(i[ ,1] == i[ ,1})){
cumsum(.)
}
}
我有一个包含 data.frames 的列表。我想遍历这些data.frames。当第一列有相同的字母时,则应计算总和。我希望这个新行出现在我的 data.frame 中。
我完全搞砸了if statement。有人可以帮帮我吗?
编辑:结果应该是这样的
df
var1 var2
1 a 4
2 b 2
3 c 6
4 d 88
对于 df2
var1 var2
1 k 108
2 b 78
3 a 5
在我真正的问题中,列表由 10 个 data.frames 组成,而不仅仅是两个
【问题讨论】:
-
你能举一个你期望的结果的例子吗?
标签: r dataframe for-loop if-statement