小编gca*_*iol的帖子

Pandas相当于Oracle Lead/Lag功能

首先,我是熊猫的新手,但我已经爱上了它.我正在尝试从Oracle实现等效的Lag函数.

我们假设你有这个DataFrame:

Date                   Group      Data
2014-05-14 09:10:00        A         1
2014-05-14 09:20:00        A         2
2014-05-14 09:30:00        A         3
2014-05-14 09:40:00        A         4
2014-05-14 09:50:00        A         5
2014-05-14 10:00:00        B         1
2014-05-14 10:10:00        B         2
2014-05-14 10:20:00        B         3
2014-05-14 10:30:00        B         4
Run Code Online (Sandbox Code Playgroud)

如果这是一个oracle数据库,我想创建一个按"组"列分组并按日期排序的滞后函数,我可以轻松使用此函数:

 LAG(Data,1,NULL) OVER (PARTITION BY Group ORDER BY Date ASC) AS Data_lagged
Run Code Online (Sandbox Code Playgroud)

这将导致下表:

Date                   Group     Data    Data lagged
2014-05-14 09:10:00        A        1           Null
2014-05-14 09:20:00        A        2            1
2014-05-14 09:30:00        A        3            2
2014-05-14 09:40:00        A        4            3
2014-05-14 …
Run Code Online (Sandbox Code Playgroud)

python pandas

35
推荐指数
2
解决办法
2万
查看次数

标签 统计

pandas ×1

python ×1