python 实现SQL 的 lag 函数的功能
首先来介绍一些SQL 的lag函数,在需要取到同一列中上n行或者下n行的值,就可以使用到lag窗口函数,在计算连续天数,或者排查数据是否连续时非常实用。
那么Python 又是怎么实现这种功能
首先我们使用的鸢尾花数据
#鸢尾花数据集 from sklearn.datasets import load_iris import pandas as pd iris=load_iris() iris.data iris.target iris.feature_names iris=pd.DataFrame(iris.data,columns=iris.feature_names).head(10) iris
我们需要取sepal length (cm)列的下一行数据
iris['lag_sepal_length'] = iris['sepal length (cm)'].shift(-1) iris[['sepal length (cm)','lag_sepal_length']]
可见 df.shift(-1) 是取下一行的值,df.shift(1) 是取上一行的值
write on 2022-06-20