python实现2表合并1表并实现VLOOKUP功能 您所在的位置:网站首页 excel中和vlookup功能一样 python实现2表合并1表并实现VLOOKUP功能

python实现2表合并1表并实现VLOOKUP功能

2023-07-30 15:08| 来源: 网络整理| 查看: 265

# 导入数据包 import pandas as pd import datetime import os import shutil import os import re from openpyxl import load_workbook

# 创建保存临时表格的文件夹---------------------------------------------------- if not os.path.exists('C:\\Users\\Thinkpad\\Desktop\\临时数据表格'):     os.makedirs('C:\\Users\\Thinkpad\\Desktop\\临时数据表格') else:     #清理历史遗留处理过的文件夹内容     shutil.rmtree('C:\\Users\\Thinkpad\\Desktop\\临时数据表格')     os.makedirs('C:\\Users\\Thinkpad\\Desktop\\临时数据表格')

# 创建保存数据最终处理结果表格的文件夹 if not os.path.exists('C:\\Users\\Thinkpad\\Desktop\\数据最终处理结果'):     os.makedirs('C:\\Users\\Thinkpad\\Desktop\\数据最终处理结果') else:     #清理历史遗留处理过的文件夹内容     shutil.rmtree('C:\\Users\\Thinkpad\\Desktop\\数据最终处理结果')     os.makedirs('C:\\Users\\Thinkpad\\Desktop\\数据最终处理结果') # ------------------以下部分是对数据进行初始化------------------------------

dfcl = pd.read_excel('C:\\Users\\Thinkpad\\Desktop\\黄龙水库大坝安全监测数据导出.xlsx', "测量数据表") dfcd = pd.read_excel('C:\\Users\\Thinkpad\\Desktop\\黄龙水库大坝安全监测数据导出.xlsx', "测点对应表") #把测点对应表的设计编号列名修改成于测量数据表的列名一样,用于后续2个表以PointId字段进行连接 dfcd.rename(columns = {'oId':'PointId'},inplace = True)

dfcl.to_excel('C:\\Users\\Thinkpad\\Desktop\\黄龙水库大坝安全监测数据导出-copy.xlsx') dfcd.to_excel('C:\\Users\\Thinkpad\\Desktop\\测点对应表-copy.xlsx')

dfcl = pd.read_excel('C:\\Users\\Thinkpad\\Desktop\\黄龙水库大坝安全监测数据导出-copy.xlsx') dfcd = pd.read_excel('C:\\Users\\Thinkpad\\Desktop\\测点对应表-copy.xlsx') # 删除未命名列 dfcl = dfcl[dfcl.columns.drop(list(dfcl.filter(regex='Unnamed')))] #在表格开头插入一列,用于VLOOKUP查找设计编号 dfcl = pd.concat([pd.DataFrame(columns=["设计编号"]), dfcl]) dfcl.to_excel('C:\\Users\\Thinkpad\\Desktop\\黄龙水库大坝安全监测数据导出-copy.xlsx') # ------------------以上部分是对数据进行初始化------------------------------ #---------------把2个数据表文件合并成1个数据表文件----------------------------- # 调用pd.ExcelWriter, 需要指定mode="a", engine="openpyxl" # 注意: 将mode设置为"a"表示追加, 但是它要求文件必须存在, 否则报错

writer = pd.ExcelWriter("C:\\Users\\Thinkpad\\Desktop\\黄龙水库大坝安全监测数据导出-copy.xlsx", mode="a", engine="openpyxl") dfcd.to_excel(writer, index=False, sheet_name="Sheet2")

# 保存并关闭writer, 写入磁盘 writer.save() writer.close() #---------------把2个数据表文件合并成1个数据表文件----------------------------- #---------------实现EXCEL表格中的VLOOKUP功能-------------------------------- workbook = load_workbook("C:\\Users\\Thinkpad\\Desktop\\黄龙水库大坝安全监测数据导出-copy.xlsx") sheet = workbook["Sheet1"] #把VLOOKUP函数填写到新增的空白列中 for i in range(2, sheet.max_row + 1):     sheet[f"B{i}"] = f'=VLOOKUP(C{i},Sheet2!$B$2:$D$34,3,FALSE)' workbook.save(filename="C:\\Users\\Thinkpad\\Desktop\\黄龙水库大坝安全监测数据导出-copy.xlsx") #---------------实现EXCEL表格中的VLOOKUP功能--------------------------------  



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有