Traceback (most recent call last): File "E:\work\time.py", line 39, in <module> writer.save() AttributeError: 'XlsxWriter' object has no attribute 'save'. Did you mean: '_save'?这是代码运行的错误
时间: 2023-12-16 20:02:46 浏览: 32
抱歉,我犯了一个错误。保存ExcelWriter对象的正确方法是使用`writer.save()`,而不是`writer.save()`。修改代码如下:
```python
# 创建一个ExcelWriter对象,用于将结果写入到Excel表格中
writer = pd.ExcelWriter('求和.xlsx', engine='xlsxwriter')
# 读取多个表格并执行相同的操作
for file in ['城二.xlsx', '涪陵.xlsx','长寿.xlsx']:
# 读取Excel文件
df = pd.read_excel(file)
# 将时间列转换为时间类型(只包含小时、分钟和秒)
df['时间'] = pd.to_datetime(df['时间'], format='%H:%M:%S')
# 创建空的DataFrame,用于存储每个小时的求和结果
sum_data = 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_data = pd.concat([sum_data, sum_hour], ignore_index=True)
# 将结果写入到ExcelWriter对象中的不同工作表中
sum_data.to_excel(writer, sheet_name=file, index=False)
# 保存ExcelWriter对象中的结果到Excel表格中
writer.save()
```
请尝试使用修改后的代码并再次运行。