我在pandas (文档)中使用shift方法处理数据系列 .
是否可以在一个步骤中进行循环移位,即第一个值成为最后一个值?
>>> input
Out[20]:
5 0.995232
15 0.999794
25 1.006853
35 0.997781
45 0.981553
Name: vRatio, dtype: float64
>>> input.shift()
Out[21]:
5 NaN
15 0.995232
25 0.999794
35 1.006853
45 0.997781
Name: vRatio, dtype: float64
Run Code Online (Sandbox Code Playgroud)
期望的输出:
Out[21]:
5 0.981553
15 0.995232
25 0.999794
35 1.006853
45 0.997781
Name: vRatio, dtype: float64
Run Code Online (Sandbox Code Playgroud)
您可以np.roll用来循环索引值,并将其作为值传递给reindex:
In [23]:
df.reindex(index=np.roll(df.index,1))
Out[23]:
vRatio
index
45 0.981553
5 0.995232
15 0.999794
25 1.006853
35 0.997781
Run Code Online (Sandbox Code Playgroud)
如果要保留索引,则可以使用np.roll以下命令再次覆盖值:
In [25]:
df['vRatio'] = np.roll(df['vRatio'],1)
df
Out[25]:
vRatio
index
5 0.981553
15 0.995232
25 0.999794
35 1.006853
45 0.997781
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3290 次 |
| 最近记录: |