python - 如何计算Python中一组内的日期时间之间的差异?

标签 python pandas numpy datetime pandas-groupby

我有一个按 AccountIDPurchaseDate 排序的 df。我想要做的是计算并创建每组 AccountID 中的 PurchaseDate 之间的差异的新列。

AccountID       PurchaseDate                 Price
| 113        2018-09-01 22:56:30              13|
| 113        2018-09-02 22:56:30              19|
| 114        2018-09-01 22:56:30              20|
| 114        2018-09-03 22:56:30              25|

AccountID       PurchaseDate                 Price          DateDiff
| 113        2018-09-01 22:56:30              13              null|
| 113        2018-09-02 22:56:30              19               1  |
| 114        2018-09-01 22:56:30              20              null|
| 114        2018-09-03 22:56:30              25               2  |

最佳答案

你可以这样做:

df['DateDiff'] = df.groupby('AccountID')['PurchaseDate'].\
                    diff().apply(lambda x: x.days)

关于python - 如何计算Python中一组内的日期时间之间的差异?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54151378/

相关文章:

python - 在 django 中不使用交互式 python shell 将值插入数据库表

python - 连接两个具有交错列的矩阵

python - 如何将值是列表的系列的值折叠成唯一列表

python - 处理浮点: With numpy python in particular

python - JupyterLab : WebGL is not supported by your browser

python - Pandas :按 A 列分组并从其他列列出元组?

python - 'Timestamp' 对象没有属性 'timestamp'

numpy - 用相同的数字填充一个 numpy 数组?

python - 如何检查 pandas 数据框中的值范围?

python - 如何在 sympy 的表达式中替换多个符号?