如何用Python将500个txt文件的实体统计结果汇总存入单个Excel工作表
批量统计TXT实体并导出到单张Excel表的实现方案
前置依赖安装
首先安装pandas写入Excel所需的依赖库:pip install openpyxl
修改后的完整代码
import os import pandas as pd path = "newData" files = [file for file in os.listdir(path) if file.endswith(".txt")] # 初始化空列表存储所有文件的统计结果 result_list = [] for file in files: df = pd.read_csv(os.path.join(path, file), sep=' ', engine='python') df.columns = ['word','token','?'] problem = df['token'].tolist().count('B-Problem') # 注意:原代码的B-Method\oTool可能存在转义符错误,如果实际标签是B-Method\Tool,建议加r前缀避免转义 method = df['token'].tolist().count(r'B-Method\Tool') data = df['token'].tolist().count('B-Dataset') # 将当前文件统计结果加入结果列表 result_list.append({ 'Filename': file, '#ofProblem': problem, '#ofMethod': method, '#ofData': data }) # 转换为DataFrame后直接导出Excel result_df = pd.DataFrame(result_list) # index=False表示不导出pandas默认的行序号,sheet_name可自定义工作表名称 result_df.to_excel('实体统计汇总.xlsx', sheet_name='统计结果', index=False)
核心逻辑说明
- 循环外新增空列表存储单文件统计结果,避免频繁IO操作影响500个文件的处理效率
- 所有文件遍历完成后统一转换为DataFrame,导出时自动匹配你需要的表头字段
- 生成的Excel会直接保存在代码运行的同级目录下,可修改
to_excel的第一个参数自定义保存路径和文件名
内容的提问来源于stack exchange,提问作者Chang
相关产品推荐
相关产品推荐

