网站首页 > 技术文章 正文
场景描述
在处理海量的Excel数据时,我们经常会遇到需要跨多个工作簿查找特定信息的情况。比如,一家大型企业可能需从多个部门上报的报表中,检索特定项目的进度更新或某员工的业绩记录。传统做法通常是挨个打开Excel表格查找到需要的数据后复制粘贴到结果表里,有100个表格就需要如此重复操作100次,而且过程中还容易出错。利用Python进行批量查找Excel数据,可以迅速定位并整合这些信息,从而节约时间并提升工作效率。
数据分析
- 输入:包含相似数据结构的多个Excel工作簿。
- 处理流程:
- 遍历所有工作簿及其工作表。
- 查找包含特定关键词或数据的条目。
- 提取并整合这些数据。
- 输出:一个整合了所有相关数据的全新Excel工作簿。
示例数据
假设企业有多个部门,每个部门每月都会上报销售数据。现需检索所有包含特定产品“Y”的销售记录。
部门文件如下:
- SalesReport_Dept1.xlsx
- SalesReport_Dept2.xlsx
- SalesReport_Dept3.xlsx
- ...
- SalesReport_DeptN.xlsx
每个文件包含以下列:
- ReportDate(报告日期)
- ProductName(产品名称)
- SalesVolume(销售数量)
- SalesPerson(销售员)
实战代码
import pandas as pd
import os
def batch_search_excel(keyword, directory, output_filename):
all_data = pd.DataFrame()
# 遍历指定文件夹中的所有Excel文件
for filename in os.listdir(directory):
if filename.endswith('.xlsx'):
filepath = os.path.join(directory, filename)
df = pd.read_excel(filepath)
# 搜索包含特定关键词的数据
matched_data = df[df['ProductName'].str.contains(keyword, na=False, case=False)]
# 如果找到匹配的数据,将其添加到总数据中
if not matched_data.empty:
all_data = pd.concat([all_data, matched_data], ignore_index=True)
# 将汇总的数据输出到新的Excel文件
all_data.to_excel(output_filename, index=False)
# 调用函数
batch_search_excel("产品Y", "path_to_sales_reports", "Matched_Product_Sales.xlsx")
总结
本段代码展示了如何通过Python和pandas库,批量查找包含特定关键词的Excel数据。通过自动遍历文件夹中的所有Excel文件,搜索含有特定产品名称的记录,并将这些记录整合到一个新的Excel文件中。这种方法在处理需要从大量分散的数据源中提取信息的情况时特别有效,能显著提高数据处理的效率。
猜你喜欢
- 2025-03-12 Python大数据分析 遍历与条件判断结合的 8 大高频应用场景
- 2025-03-12 如何对日志文件进行二分查找?二分查找工具timecat介绍
- 2025-03-12 独家 | 5 个Python高级特性让你在不知不觉中成为Python高手
- 2025-03-12 pandas学习笔记-条件筛选(二)
- 2025-03-12 Python 杨氏矩形查找:高效编程新利器
- 2025-03-12 python字符串的查找
- 2025-03-12 python爬虫Selenium库详细教程
- 2025-03-12 Python高性能编程:五种核心优化技术的原理与Python代码
- 2025-03-12 Python查找众数及中位数
- 2025-03-12 Python查找接口成功率最优时间段
- 265℃Python短文,Python中的嵌套条件语句(六)
- 264℃python笔记:for循环嵌套。end=""的作用,图形打印
- 263℃PythonNet:实现Python与.Net代码相互调用!
- 259℃Python实现字符串小写转大写并写入文件
- 257℃Python操作Sqlserver数据库(多库同时异步执行:增删改查)
- 117℃原来2025是完美的平方年,一起探索六种平方的算吧
- 98℃Python 和 JavaScript 终于联姻了!PythonMonkey 要火?
- 90℃Ollama v0.4.5-v0.4.7 更新集合:Ollama Python 库改进、新模型支持
- 最近发表
-
- 想要提升Python代码效率?这五个高级方法是必须要会的
- 函数还能返回函数?Python 这个神操作让代码效率翻倍
- 新手学Python避坑,学习效率狂飙! 二十一、print()函数
- 新手学Python避坑,学习效率狂飙!十九、break 与 continue
- 新手学Python避坑,学习效率狂飙!十三、if语句和while语句
- Python自动化办公:打工人常用的10个效率工具,告别加班!
- Python的10个神级冷门技巧,让代码效率翻倍!
- 提升Python编程效率的10点建议(python小技巧及速度提高)
- 90%的Python程序员都不知道的(效率密码 )函数让代码直接封神!
- 【Python】性能加速之解析器加速Pypy 库使用说明
- 标签列表
-
- python中类 (31)
- python 迭代 (34)
- python 小写 (35)
- python怎么输出 (33)
- python 日志 (35)
- python语音 (31)
- python 工程师 (34)
- python3 安装 (31)
- python音乐 (31)
- 安卓 python (32)
- python 小游戏 (32)
- python 安卓 (31)
- python聚类 (34)
- python向量 (31)
- python大全 (31)
- python次方 (33)
- python桌面 (32)
- python总结 (34)
- python浏览器 (32)
- python 请求 (32)
- python 前端 (32)
- python验证码 (33)
- python 题目 (32)
- python 文件写 (33)
- python中的用法 (32)