0
私のデータフレームは、州名、年、および各年および各州の税額控除の3つの列で構成されています。以下は1つの状態の例です。dplyrを使用して比例的な変更を計算する
year RealTaxRevs
1 1971 8335046
2 1972 9624026
3 1973 10498935
4 1974 10052305
5 1975 8708381
6 1976 8911262
7 1977 10759032
私は前年度税の領収書のパーセンテージの変化を計算したいと思います(例えば(1977税の領収書 - 1976税領収書)/ 1976税領収書)。コードは、おそらく次のようになります。
data %>% group_by(state) %>% mutate(change = c(NA, diff(RealTaxRevs)/RealTaxRevs
しかし、それは、今年の税の領収書に対する割合を計算していますので、それは動作しません。 RealTaxRevsを1か所下位にシフトさせて、前年の納税受領額に対する割合を計算する方法を教えてください。それとも、dplyrのエレガントな方法ですか?
偉大に見えますが、なぜ-1? – tnabdb
'(a - b)/ b =(a/b - 1)' – bergant
ああそうだね。使用するフォームは数値的に安定していますか? – tnabdb