import pandas as pd
# 读取指定位置的Excel文件
input_file_path ="C:\Users\Username\Documents\file.xlsx" # 替换成你的读取指定文件夹下文件,Windows电脑格式
input_file_path ="/Users/Username/Documents/file.xlsx " # 替换成你的读取指定文件夹下文件,Mac电脑和Unix/Linux格式,这两段代码二选一
sheet_name = 'Sheet1' # 替换成你的Excel文件里面的sheet页名称
df = pd.read_excel(input_file_path, sheet_name=sheet_name)
# 获取日期和班次列的名称
date_column = df.columns[0] # 假设日期列是第一列
shift_column = df.columns[1] # 假设班次列是第二列
# 提取日期和班次列以及需要聚合的数据列
data_columns = df.columns[2:] # 从第三列开始,即后面所有列都是数据
# 使用groupby按照日期和班次对数据进行聚合
aggregated_df = df.groupby([date_column, shift_column])[data_columns].sum().reset_index()
# 进一步按日期进行聚合,计算每日的总和
daily_aggregated_df = aggregated_df.groupby([date_column])[data_columns].sum().reset_index()
# 输出到新的Excel文件
output_file_path = '/Users/Username/Documents/file聚合.xlsx' # 替换成你想要保存的Excel文件路径,注意Windows和mac的格式
daily_aggregated_df.to_excel(output_file_path, index=False, engine='openpyxl')
print("数据按照日期和班次进行聚合成每日数据并保存到新的Excel文件成功")