python语言遍历当前文件夹下的文件,包括子文件中的文件,再对文件夹下的xls文件内容进行汇总统计,相同的tag,其count数量相加,最后汇总成一张表格
时间: 2024-06-09 21:11:21 浏览: 77
Python实现处理excel表格,主要以多表汇总为主.zip
下面是一个实现这个需求的 Python 代码:
``` python
import os
import xlrd
from collections import defaultdict
import pandas as pd
# 定义一个 defaultdict,用于存放每个 tag 出现的次数
tag_count = defaultdict(int)
# 遍历指定目录及其子目录下的所有文件
for root, dirs, files in os.walk("."):
for file in files:
# 只处理 xls 文件
if file.endswith(".xls"):
# 使用 xlrd 读取 xls 文件中的数据
file_path = os.path.join(root, file)
book = xlrd.open_workbook(file_path)
sheet = book.sheet_by_index(0)
# 遍历每行数据,统计每个 tag 出现的次数
for row in range(1, sheet.nrows):
tag = sheet.cell(row, 0).value
count = int(sheet.cell(row, 1).value)
tag_count[tag] += count
# 将统计结果转换成 DataFrame,并按照 count 降序排序
df = pd.DataFrame(list(tag_count.items()), columns=["tag", "count"]).sort_values(by=["count"], ascending=False)
# 输出结果到文件
df.to_csv("result.csv", index=False)
```
这段代码会遍历当前目录及其子目录下的所有文件,找到所有的 xls 文件,读取它们中的数据,统计每个 tag 出现的次数,并将统计结果输出到一个 CSV 文件中。你可以根据实际需求修改代码中的路径和文件格式等参数。
阅读全文