我有一张类似于:
的表格 C1 C2 C3 C4 C5 C6
R1 2 3 5 7 8 8
R2 1 5 8 9 2 13
R3 4 5 7 9 1
我想创建一个新的列“C6”,使得该值从R1C4加上R2C1得到8,并重复下一行R2C4加R3C1,在C6中给出13,并希望对整个表重复此操作。 / p>
非常感谢。非常感谢。
答案 0 :(得分:4)
我们可以在lead
使用dplyr
:
library(dplyr)
lead(df$C1) + df$C4
#[1] 8 13 NA
答案 1 :(得分:3)
我们可以使用base R
删除' C1'的第一个元素,在末尾添加NA
并添加' C4'柱
with(df1, c(C1[-1], NA) + C4)
#[1] 8 13 NA
答案 2 :(得分:-1)
也可以使用for
循环:
for (r in 1:(nrow(ddf)-1)){
ddf[r,'C6'] = ddf[r,'C4']+ ddf[r+1,'C1']
}