我希望每个不同的excel文件的结果能够在同一个表格中,但是含有各自的表头,能够分开
时间: 2024-04-15 15:30:11 浏览: 20
如果您希望将每个不同的Excel文件的结果写入同一个表格中,但保留各自的表头,您可以进行以下修改:
```python
# 创建一个ExcelWriter对象,用于将结果写入到Excel表格中
writer = pd.ExcelWriter('求和.xlsx', engine='xlsxwriter')
# 创建一个空的DataFrame,用于存储所有小时的求和结果
sum_data = pd.DataFrame()
# 读取多个表格并执行相同的操作
for file in ['城二.xlsx', '涪陵.xlsx', '长寿.xlsx']:
# 读取Excel文件
df = pd.read_excel(file)
# 将时间列转换为时间类型(只包含小时、分钟和秒)
df['时间'] = pd.to_datetime(df['时间'], format='%H:%M:%S')
# 创建空的DataFrame,用于存储每个小时的求和结果
sum_hourly = pd.DataFrame()
# 迭代每个小时
for hour in range(24):
# 选择特定小时的数据行
data_hour = df.loc[df['时间'].dt.hour == hour]
# 对多个列进行求和,并输出为一行数据
sum_hour = data_hour[
['下行平均可用PRB个数', '下行平均使用的PRB个数', '下行调度平均流数', '上行平均可用PRB个数', '上行平均使用的PRB个数', '上行调度平均流数', '平均使用的PDCCH CCE个数',
'平均可用的PDCCH CCE个数', '下行PRB*空分流', '上行PRB*空分流']].sum().to_frame().T.reset_index(drop=True)
# 将每个小时的求和结果追加到小时级别的结果DataFrame中
sum_hourly = pd.concat([sum_hourly, sum_hour])
# 将小时级别的结果DataFrame写入到ExcelWriter对象中的不同工作表中
sum_hourly.to_excel(writer, sheet_name=file, index=False, startrow=len(sum_data)+1)
# 将每个文件的结果追加到总的结果DataFrame中
sum_data = pd.concat([sum_data, sum_hourly], ignore_index=True)
# 将总的结果DataFrame写入到ExcelWriter对象中的总结果工作表中
sum_data.to_excel(writer, sheet_name='总结果', index=False)
# 保存ExcelWriter对象中的结果到Excel表格中
writer.save()
```
这段代码将在同一个Excel表格中的不同工作表中写入每个文件的结果,并保留各自的表头。同时,它还将所有文件的结果存储在一个总结果工作表中。请注意,每个工作表的起始行通过`startrow`参数设置为前一个文件的结果行数加1,以便在同一工作表中进行追加写入。
希望这次修改符合您的需求。如果还有其他问题,请随时提问。