DataFrame.shift(periods=1, freq=None, axis=0)
periods 表示移动的幅度,可以是正数,也可以是负数,默认值是1。1表示移动一次。移动的是数据,索引不能移动。如果移动之后没有对应值,将被赋值为NaN
freq 可选参数,默认值为None,只适用于时间序列,如果这个参数存在,那么会按照参数值来移动时间索引,而数据值不会发生变化
axis axis=1表示行,axis=0表示列(默认)
# 统计学生英语周测成绩的升降情况
import pandas as pd
data = [110, 105, 99, 120, 115]
index = [1,2,3,4,5]
df = pd.DataFrame(data=data, index=index, columns=['英语'])
df['升降'] = df['英语'] - df['英语'].shift()
print(df)
英语 升降
1 110 NaN
2 105 -5.0
3 99 -6.0
4 120 21.0
5 115 -5.0
网友评论