以前の関連する行のデータを使用して、dplyr/tidyr 関数を使用して 2 つの新しい変数を作成しようとしています。私の例では、ID、YEAR、および AMOUNT のデータを含む data.frame があります (以下を参照)。
ID YEAR AMOUNT
A 2000 4
B 2000 4
A 2001 2
B 2001 3
A 2002 3
B 2002 1
dplyr/tidyr を使用して最後の 2 つの列を動的に作成したい (以下を参照) (定期的に行う方法を見つけましたが、dplyr/tidyr の最新バージョンでそれを行う方法を知りたいです)。
ID YEAR AMOUNT YtY_VARIANCE Y_VARIANCE
A 2000 4 0 0
B 2000 4 0 0
A 2001 2 -2 -2
B 2001 3 -1 -1
A 2002 3 +1 -1
B 2002 1 -2 -3
ここで、YtY_VARIANCE は前年度から金額を差し引いて得られ、Y_VARIANCE は初年度から金額を差し引いて得られます (常に)。
私は次のようなコードを期待します:
raw_data %>%
group_by(ID, YEAR) # Not even sure if that's required?!?
mutate(YtY_VARIANCE = xxx(), Y_VARIANCE = yyy() )
xxx と yyy は何でしょう?! それは可能ですか?
誰でも答えを教えたり、指摘したりできますか?
前もって感謝します!