首页 > 解决方案 > Python Pandas 中 DataFrame 中的日期操作?

问题描述

您好,我有 DataFrame 与客户的协议,如下所示:

rng = pd.date_range('2020-12-01', periods=5, freq='D')
df = pd.DataFrame({ "ID" : ["1", "2", "1", "2", "2"], "Date": rng})

我需要根据上面的df计算创建新的DataFrame:

Column1= 从第一个协议到今天 (18.12) 的天数

第 2 列 = 从上次协议到今天 (18.12) 的天数

为了更精确,我需要创建 df 如下所示:

在此处输入图像描述

标签: pythonpandasdataframedate

解决方案


查看groupby

out = df.groupby('ID').Date.agg(['min','max']).rsub(pd.to_datetime('2020-12-18'))
       min     max
ID                
1  17 days 15 days
2  16 days 13 days

推荐阅读