1
別の列の計算値から列の値を計算しようとしています。data.table内の他の列の計算値に基づいて列のローリング合計を計算する
DT <- data.table(X = c("a","a","a", "b","b","b", "c","c","c"),
Y = rep(c(1,2,3),3),
z1 = c(10, 11,12),
z2 = c(1,2,3))
ここDTで、Iは各X.次の行の計算のための最初の行のZ1およびZ2の和である新しい列Zはすべてのために以前に計算Z +現在の行Z2から行われるべき計算します"a"の行。同様に "b"、 "c"。
"for"ループで試しましたが、成功しませんでした。 最終結果は次のようになります。
X Y z1 z2 Z
a 1 10 1 11
a 2 11 1 12
a 3 12 1 13
b 1 10 2 12
b 2 11 2 14
b 3 12 2 16
c 1 10 3 13
c 2 11 3 16
c 3 12 3 19
NBを使用することができます私はあなたのデータは 'あなたのデモの答えを一致させるために(各= 3、C(1,2,3))' Z2 =担当者であるべきだと思います – dww