大家好,我需要帮助 我有与此类似的数据集,其中包含多个行和列。
df<- data.frame(A=seq(0.01,0.05,0.01),
B=c(0.01, -0.24, 0, -0.21, 0),
C=seq(0.03,0.07,0.01),
D=c(0.4,0.5,0,0,2))
我使用了shift命令并创建了另一行E.
df[ , E := shift(A)+A]
现在我想对整个数据帧df应用类似的函数,并使用类似的方法立即创建类似于E的行F,G,H。
谢谢。
答案 0 :(得分:1)
这是替代方案:
new_cols <- c('E','F','G','H')
old_cols <- colnames(df)
for (i in seq_along(new_cols)){
eval(parse(text = paste0("df[,",new_cols[i],":= shift(",old_cols[i],")+",old_cols[i],"]")))
}