1
Aにソートされたデータフレームがあり、同じIDごとにx2
の増加を計算したいと思います。 は、入力は、すでに特定の方法でソートされます。同じIDごとに行間の増加を計算します
ID x2 x3 x4
1 10 11 2
2 100 12 4
1 20 13 10
7 24 3 1
1 30 14 0
3 6 15 1
2 90 15 1
私が取得したいと思います:
ID x2 increase x3 x4
1 10 11 2
2 100 12 4
1 20 +100% 13 10
7 24 3 1
1 30 +50% 14 0
3 6 15 1
2 90 -10% 15 1
を行うことができますが、この命令 'のdf $についての説明を与えることができますあなたの答えに< - ave(df $ x2、df $ ID、FUN = function(x)c(NA、diff(x)/ head(x、-1))* 100) – noblabla
'ave'はあなたのデータを' df $ ID'で分割し、長さ 'nrow(df)'のベクトルを返します。 'diff(x)'は 'c(10L、10L)'で であり、 'head(x、1)'は 'c(10L、20L、30L) 20L)。それらを分割することであなたの増加をもたらします。第1の値が増加しないので、「NA」を追加しています。 – lukeA
驚くばかり!ありがとうございました。 – noblabla