下面是一个示例代码,演示如何按月份和年份分组并对所有列求和。
import pandas as pd
# 创建示例数据
data = {
'日期': ['2022-01-01', '2022-01-02', '2022-01-03', '2022-02-01', '2022-02-02', '2022-02-03'],
'年份': [2022, 2022, 2022, 2022, 2022, 2022],
'月份': [1, 1, 1, 2, 2, 2],
'列1': [10, 20, 30, 40, 50, 60],
'列2': [1, 2, 3, 4, 5, 6],
'列3': [100, 200, 300, 400, 500, 600]
}
df = pd.DataFrame(data)
# 将日期列转换为日期类型
df['日期'] = pd.to_datetime(df['日期'])
# 按月份和年份分组并求和
grouped = df.groupby(['年份', '月份']).sum()
print(grouped)
输出结果为:
列1 列2 列3
年份 月份
2022 1 60 6 600
2 150 15 1500
在这个示例中,我们首先创建了一个包含日期、年份、月份和几个列的示例数据。然后,我们使用pd.to_datetime()
函数将日期列转换为日期类型,以便后续按日期进行分组。接下来,我们使用groupby()
函数按年份和月份分组,并使用sum()
函数对所有列进行求和。最后,我们打印出分组后的结果。