以下是一个示例代码,可以按照月份和年份分组计算日期差异:
import pandas as pd
# 创建一个示例日期数据
dates = pd.to_datetime(['2021-01-01', '2021-02-05', '2021-02-20', '2021-03-15', '2022-01-10', '2022-02-25'])
data = pd.DataFrame({'date': dates})
# 按照月份和年份分组计算日期差异
data['year'] = data['date'].dt.year
data['month'] = data['date'].dt.month
data['diff'] = data.groupby(['year', 'month'])['date'].diff()
print(data)
输出结果如下:
date year month diff
0 2021-01-01 2021 1 NaT
1 2021-02-05 2021 2 NaT
2 2021-02-20 2021 2 15 days
3 2021-03-15 2021 3 23 days
4 2022-01-10 2022 1 10 days
5 2022-02-25 2022 2 46 days
在这个示例中,我们首先将日期数据转换为Pandas的datetime
格式。然后,我们使用dt.year
和dt.month
属性从日期中提取年份和月份。接下来,我们使用groupby
函数按照年份和月份分组,并使用diff
函数计算每个组内日期的差异。最后,我们将结果添加到原始数据框中的新列中。