0 背景
因为需要检索excel中的一些信息,把检索后的结果,写入到新表中。
符合筛选后的结果:
写入到的新表格数据:
1 技术
使用pandas库,读取excel表格的数据。然后对表格中的数据进行筛选,使用isin方法
来判断数据中是否等于字段中的内容,使用.str.contains方法
来判断数据中是否包含字段中的关键字,最后,再把数据写入到新表格中。
2 实现代码
import pandas as pd
import warnings
# 移除UserWarning: Data Validation extension
warnings.filterwarnings('ignore', category=UserWarning, module='openpyxl')
tableData = pd.read_excel(io='/Users/mac/Downloads/2024公务员职位表.xlsx')
# 获取表头数据
# tableData.columns = [COL.split('\n')[0] for COL in list(tableData.columns)]
# 筛选表格数据
tableData = tableData[tableData['学历要求'].isin(['本科及以上', '大专及以上'])
& tableData['报考人员身份要求'].isin(['不限', '两年以上基层工作经历人员'])
& tableData['性别要求'].isin(['男', '不限'])
& tableData['专业要求'].str.contains('计算机|工学|电子信息|不限')
& tableData['招录单位全称'].str.contains('云南省|昆明市')
]
# 报考符合条件的职位数量
print(tableData.count())
# 将筛选后的结果写入到新表格中
# 文件名
xlsPath = '/Users/mac/Downloads/2024公务员筛选结果.xlsx'
writer = pd.ExcelWriter(xlsPath)
# 表名
tableData.to_excel(writer, sheet_name='云南省2024年度考试录用公务员招考简章')
writer._save()