diff()
Rの関数が何をするのかわかりません。この例を参照してください。
temp = c(10,1,1,1,1,1,1,2,1,1,1,1,1,1,1,3,10)
diff(temp)
上記のコードは、次の出力を生成します。
[1] -9 0 0 0 0 0 1 -1 0 0 0 0 0 0 2 7
この関数の定義は何ですか?
diff()
Rの関数が何をするのかわかりません。この例を参照してください。
temp = c(10,1,1,1,1,1,1,2,1,1,1,1,1,1,1,3,10)
diff(temp)
上記のコードは、次の出力を生成します。
[1] -9 0 0 0 0 0 1 -1 0 0 0 0 0 0 2 7
この関数の定義は何ですか?
この関数は、ベクトルのすべての連続する値の差を計算します。サンプルベクトルの場合、違いは次のとおりです。
1 - 10 = -9
1 - 1 = 0
1 - 1 = 0
.
.
.
3 - 1 = 2
10 - 3 = 7
引数differences
を使用すると、違いの順序を指定できます。
例:コマンド
diff(temp, differences = 2)
[1] 9 0 0 0 0 1 -2 1 0 0 0 0 0 2 5
と同じ結果を生成します
diff(diff(temp))
[1] 9 0 0 0 0 1 -2 1 0 0 0 0 0 2 5
したがって、差分の差分を返します。
引数lag
を使用すると、ラグを指定できます。
たとえば、の場合lag = 2
、3番目と1番目の値の間、4番目と2番目の値の間、5番目と3番目の値の間などの差が計算されます。
diff(temp, lag = 2)
[1] -9 0 0 0 0 1 0 -1 0 0 0 0 0 2 9
連続する要素のペア間の差を計算します。
たとえば、1時間に取得された温度の読み取り値など、いくつかtemp
の変数の観測値があるとします。次にdiff(temp)
、1時間ごとに温度がどの程度変化したかを示します。
の反対diff()
はcumsum()
(累積合計)です:
> temp
[1] 10 1 1 1 1 1 1 2 1 1 1 1 1 1 1 3 10
> cumsum(c(10, diff(temp)))
[1] 10 1 1 1 1 1 1 2 1 1 1 1 1 1 1 3 10