我不明白R的功能diff()
是什麼。看到這個例子:R中的diff()函數有什麼作用?
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
什麼是這個函數的定義?
我不明白R的功能diff()
是什麼。看到這個例子:R中的diff()函數有什麼作用?
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
,則計算第三值與第一值之間的差值,第四值與第二值之間,第五值與第三值之間等等。
diff(temp, lag = 2)
[1] -9 0 0 0 0 1 0 -1 0 0 0 0 0 2 9
「差異」的論點是什麼? –
@ user1885733查看我答案的更新。 –
@ user1885733如果您在不帶'lag'和'differences'參數的情況下調用'diff(x)',將使用默認值(即1)。這與'diff(x,lag = 1,difference = 1)'相同。 –
它計算連續元素對之間的差異。
假設temp
是一些變量的觀測值,例如在小時內讀取的溫度讀數。然後diff(temp)
會告訴你每小時的溫度變化。
的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
是的,但我不能undderstand它背後的概念。 –
什麼是應用程序,以及如何計算結果? –