以下是一个示例代码,演示如何按照外键和日期范围进行分组:
import pandas as pd
# 创建示例数据
data = {
'外键列': [1, 1, 2, 2, 3, 3],
'日期列': ['2021-01-01', '2021-01-02', '2021-01-01', '2021-01-03', '2021-01-02', '2021-01-03'],
'数值列': [10, 20, 30, 40, 50, 60]
}
df = pd.DataFrame(data)
# 将日期列转换为日期类型
df['日期列'] = pd.to_datetime(df['日期列'])
# 按照外键列和日期列进行分组,并计算数值列的总和
grouped = df.groupby(['外键列', pd.Grouper(key='日期列', freq='D')])['数值列'].sum()
# 打印分组结果
print(grouped)
输出结果将会是:
外键列 日期列
1 2021-01-01 10
2021-01-02 20
2 2021-01-01 30
2021-01-03 40
3 2021-01-02 50
2021-01-03 60
Name: 数值列, dtype: int64
以上代码使用了pandas库的groupby
方法,首先将日期列转换为日期类型,然后按照外键列和日期列进行分组,最后计算数值列的总和。可以根据需要调整代码中的列名和分组方式。
下一篇:按照外键进行MySQL分区