【发布时间】:2020-02-10 08:03:48
【问题描述】:
我确定以前有人问过这个(非常基本的)问题,但我一定是在寻找错误的东西,因为我找不到答案:
我经常需要执行涉及组合来自同一数据帧的多行数据的操作。我知道如何使用循环结构来做到这一点,例如
for (i in 2:nrow(df)) { df$result[i] <- df$data[i] - df$data[i-1] }
for (i in 12:nrow(df)) { j <- i - 11; df$result[i] <- prod(df$data[j:i]) }
对于这类不涉及循环的操作,是否有通用解决方案?还是在 R 中循环实际上是最好的方法?
【问题讨论】:
-
谢谢!这两种解决方案都让我遇到了第一种情况,我需要处理“这一行”和“前一行”。第二种情况是否有类似的解决方案,我需要处理“这一行”和“前十一行”?