excel 使用vlookup实现 表格合并,类似left-join

本文介绍了如何使用Excel的VLOOKUP函数将两个表格按指定列进行类似left-join的连接合并。通过举例说明VLOOKUP的参数含义,展示如何操作以达到数据合并效果,即使数据不完全匹配或排序不同。
摘要由CSDN通过智能技术生成

最近处理数据时遇到需要将Excel中两个表数据按指定列作为条件进行连接合并的需求,若使用程序来实现稍微有点麻烦,

想到excel有内置函数,去网上查了下,发现可以很方便的处理这种需求。

 

先说下原始的需求:

现在有两个表:

sheet1:

  A B
1 userid level
2 1001 12
3 1002 15

 

sheet2:

  A B
1 userid username
2 1001 test1
3 1002 test2

 

希望合并后新得到的sheet1:

  A B C
1 userid level usernam
好的,假设你的表格文件名为“data.xlsx”,包含三个表格,分别为“Sheet1”、“Sheet2”和“Sheet3”。其中,“Sheet1”表格中的某些列需要从“Sheet2”和“Sheet3”中获取数据,可以使用pandas库中的merge()函数和pandasql库中的sqldf()函数来实现VLOOKUP的效果。下面是示例代码: ```python import pandas as pd from pandasql import sqldf # 读取Sheet1表格 df1 = pd.read_excel('data.xlsx', sheet_name='Sheet1') # 读取Sheet2表格 df2 = pd.read_excel('data.xlsx', sheet_name='Sheet2') # 读取Sheet3表格 df3 = pd.read_excel('data.xlsx', sheet_name='Sheet3') # 使用merge()函数将Sheet1和Sheet2合并 merged_df = pd.merge(df1, df2, on='key_column') # 使用sqldf()函数执行SQL语句,将Sheet1和Sheet3合并 query = ''' SELECT Sheet1.*, Sheet3.column_name FROM merged_df Sheet1 LEFT JOIN df3 Sheet3 ON Sheet1.key_column = Sheet3.key_column ''' final_df = sqldf(query) # 打印最终的数据框 print(final_df) ``` 在此示例中,我们首先使用read_excel()函数从Excel文件中读取三个表格的数据,然后使用merge()函数将“Sheet1”和“Sheet2”中的数据按照共同的列(即“key_column”)进行合并。接着,我们使用sqldf()函数执行SQL语句,将“Sheet1”和“Sheet3”中的数据按照共同的列(即“key_column”)进行合并。最后,我们使用print()函数打印最终的数据框。 请注意,你需要将代码中的“key_column”和“column_name”替换为实际的列名。另外,你也可以根据自己的需求修改此代码,以实现更复杂的VLOOKUP功能。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值