使用 Pandas 将多个日志文件数据导出到单个 Excel

Posted

技术标签:

【中文标题】使用 Pandas 将多个日志文件数据导出到单个 Excel【英文标题】:Exporting Multiple log files data to single Excel using Pandas 【发布时间】:2020-09-15 10:38:07 【问题描述】:

如何将多个数据框导出到单个 excel,我不是在谈论合并或组合。我只想将多个日志文件中的特定行编译为单个 Excel 工作表。我已经写了一个代码,但我卡住了:

import pandas as pd
import glob
import os
from openpyxl.workbook import Workbook


file_path = "C:/Users/HP/Desktop/Pandas/MISC/Log Source"
read_files = glob.glob(os.path.join(file_path,"*.log"))


for files in read_files:
    logs = pd.read_csv(files, header=None).loc[540:1060, :]

    print(LBS_logs)

    logs.to_excel("LBS.xlsx")

当我这样做时,我只从第一个日志中获取数据。

感谢您的建议。谢谢!

【问题讨论】:

这能回答你的问题吗? Putting many python pandas dataframes to one excel worksheet 【参考方案1】:

您正在保存 logs,这是您的 for 循环中的变量,每次迭代都会更改。您想要的是制作一个数据框列表并将它们全部组合起来,然后将其保存到 excel 中。

file_path = "C:/Users/HP/Desktop/Pandas/MISC/Log Source"
read_files = glob.glob(os.path.join(file_path,"*.log"))

dfs = []
for file in read_files:
    log = pd.read_csv(file, header=None).loc[540:1060, :]
    dfs.append(log)

logs = pd.concat(logs)
logs.to_excel("LBS.xlsx")

【讨论】:

以上是关于使用 Pandas 将多个日志文件数据导出到单个 Excel的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 Pandas 将多个 csv 文件中的单个数据列合并为一个?

Pandas:将多个 DataFrame 导出到多个 xlsx 文件

重复将多个 Panda 数据集导出到多个 csv 文件的任务

Pandas:使用循环和分层索引将多个 csv 文件导入数据帧

将多个查询导出到不同的表

如何将 pandas 数据框导出为 json 并保留原始日期时间格式?