Python 批量统计文件夹下txt文件关键词词频并导出Excel
使用 Python 批量统计文件夹下 txt 文件中的特定关键词词频,并将输出结果导出到 Excel
本文将介绍如何使用 Python 脚本批量统计指定文件夹下所有 txt 文件中特定关键词的词频,并将结果导出到 Excel 表格中。
代码示例
import os
import re
import collections
import xlwt
# 统计关键词的词频
def count_word(file_path, keyword):
with open(file_path, 'r', encoding='utf-8') as f:
content = f.read()
word_list = re.findall(keyword, content)
return collections.Counter(word_list)[keyword]
# 遍历文件夹下的所有txt文件,统计关键词的词频
def traverse_folder(folder_path, keyword):
result = []
for root, dirs, files in os.walk(folder_path):
for file in files:
if file.endswith('.txt'):
file_path = os.path.join(root, file)
result.append((file_path, count_word(file_path, keyword)))
return result
# 将结果导出到excel文件中
def export_to_excel(result, output_path):
workbook = xlwt.Workbook(encoding='utf-8')
worksheet = workbook.add_sheet('Sheet1')
row = 0
for file_path, count in result:
worksheet.write(row, 0, file_path)
worksheet.write(row, 1, count)
row += 1
workbook.save(output_path)
if __name__ == '__main__':
folder_path = 'path/to/folder'
keyword = 'some_keyword'
result = traverse_folder(folder_path, keyword)
export_to_excel(result, 'output.xls')
代码说明
- 导入必要的库:os、re、collections、xlwt
- 定义
count_word函数,输入参数为文件路径和关键词,输出为关键词的词频。函数使用正则表达式re.findall查找所有匹配的关键词,并使用collections.Counter统计词频。 - 定义
traverse_folder函数,输入参数为文件夹路径和关键词,输出为一个包含所有 txt 文件路径和对应关键词词频的列表。函数使用os.walk遍历文件夹,并调用count_word函数统计每个文件的词频。 - 定义
export_to_excel函数,输入参数为词频列表和输出路径,将结果导出到 Excel 文件中。函数使用xlwt库创建 Excel 工作簿,将词频列表写入工作表,并保存文件。
使用方法
- 将代码保存为 Python 文件,例如
count_word.py - 修改代码中的
folder_path、keyword和output.xls为实际的路径和文件名 - 运行 Python 文件,例如
python count_word.py
注意事项
- 确保已安装
xlwt库,可以使用pip install xlwt安装 - 文件夹路径和输出文件路径必须正确
- 关键词可以是任意字符串
- 脚本默认使用 UTF-8 编码打开文件,如果文件使用其他编码,需要修改
count_word函数中的编码参数
通过以上步骤,你就可以轻松地使用 Python 脚本批量统计文件夹下 txt 文件中的特定关键词词频,并将结果导出到 Excel 表格中。
原文地址: https://www.cveoy.top/t/topic/mLrc 著作权归作者所有。请勿转载和采集!