【发布时间】:2017-06-13 02:45:31
【问题描述】:
我有一个数据框,并且希望每一行的每个第二个单元格(从第二个单元格开始)的总和,其左邻居大于零。这是一个例子:
a <- c(-2,1,1,-2)
b <- c(1,2,3,4)
c <- c(-2,1,-1,2)
d <- c(5,6,7,8)
df <- data.frame(a,b,c,d)
这给出了:
> df
a b c d
1 -2 1 -2 5
2 1 2 1 6
3 1 3 -1 7
4 -2 4 2 8
对于第一行,正确的和是 0(1 的左邻是 -2,5 的左邻也是 -2);第二个是 8;第三个是 3;第四次又是 8 次。
我想不使用循环,所以我尝试使用sum() 和which() 就像在Conditional Sum in R 中一样,但找不到通过的方法。
【问题讨论】: