Вот еще один подход, использующий for
l oop:
data
df <- data.frame(A=NA, B = c(24L, 18L, 16L, 21L, 14L),C=NA)
Инициализация первой строки из df
df$A[1] <- 100
df$C[1] <- df$A[1]-df$B[1]
Заполните оставшиеся строки в df
for (i in 1:(length(df$B)-1)){
df$C[i+1] <- df$C[i]-df$B[i+1]+20
df$A[i+1] <- df$C[i]+20
}
Выходные данные
df
A B C
1 100 24 76
2 96 18 78
3 98 16 82
4 102 21 81
5 101 14 87