diff函數是用來將數據進行某種移動之后與原數據進行比較得出的差異數據,舉個例子,現在有一個DataFrame類型的數據df,如下:
index | value1 |
---|---|
A | 0 |
B | 1 |
C | 2 |
D | 3 |
如果執行:
df.diff()
則會得到:
index | value1 |
---|---|
A | NaN |
B | 1 |
C | 1 |
D | 1 |
怎么得到的呢,其實是經過了兩個步驟,首先會執行:
df.shift()
然后再將該數據與原數據做差,即:
df.shift()-df
函數原型:
DataFrame.diff(periods=1, axis=0)
參數:
periods:移動的幅度,int類型,默認值為1。
axis:移動的方向,{0 or ‘index’, 1 or ‘columns’},如果為0或者’index’,則上下移動,如果為1或者’columns’,則左右移動。
返回值
diffed:DataFrame類型
例如:執行
df.diff(2)
得到:
index | value1 |
---|---|
A | NaN |
B | NaN |
C | 2 |
D | 2 |
執行
df.diff(-1)
得到:
index | value1 |
---|---|
A | -1 |
B | -1 |
C | -1 |
D | NaN |