Python批量提取保存xlsx指定列

问题

在一个文件夹下,有若干xlsx工作表,每个xlsx表中含有若干列和行,但仅需其中一项内容中包含特定关键字的行/列数据,并需将所有xlsx表中的该项内容汇总至一个excel文件内。

思路

  • 将目标行/列名称作为索引,依据索引获取包含特定关键词的整行/列数据;
  • 将获取的整行/列数据写入新excel文件中;
  • 应用for循环实现批量提取和写入工作。

代码

#导入模块
import pandas as pd
import openpyxl
import os

#打开excel文件
wb = openpyxl.load_workbook('C:\Users\grr\Desktop\O3各指标之间的关系建立\站点_20150101-20151231\*.xlsx')

#选择工作表
ws = wb.active

#索引
keyword = 'O3'

#行数和列数
rows = ws.max_row
cols = ws.max_column

#遍历xlsx表格,寻找包含关键词的行数据
for row in range (1, rows+1):
    for col in range (1, cols+1):
        if keyword in str(ws.cell(row, col).value):
            print(ws[row])

#建立输出目录的绝对路径
out_path = os.path.join(C:\Users\grr\Desktop\O3各指标之间的关系建立\站点_20150101-20151231, 'O3.xlsx')

#输出到excel表,并删除pandas默认的index列
df_concated.to_excel(out_path, sheet_name = 'Sheet1', index = None)

#调用并执行函数
to_one_excel(r'C:\Users\grr\Desktop\O3各指标之间的关系建立\站点_20150101-20151231')

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值