Python_Dataframe_表格合并实现excel中VLOOKUP函数

利用Python实现海量数据之间的合并工作——pandas.merge

在excel中需要利用VLOOKUP函数进行两个表格的关联列合并操作。Python中的pandas.merge()函数拥有更加强大的功能,函数需要利用Pandas包。

其中,

1、data1和data2表示需要进行合并操作的两个数据集表格,两个表格都可以选定特定列进行合并操作;

2、how='' 表示两个列表的合并策略,可选参数有'left'、'right'、'outer'和'inner'4种,

        (1)'left' 表示以左表格(data1)为基准进行合并,合并时保留左表格匹配列的全部内容,右表格(data2)多出内容进行删除,缺少内容填入nan值;

        (2)'right' 表示右表格为基准进行合并,合并时保留右表格匹配列的全部内容,左表格多出内容进行删除,缺少内容填入nan值;

        (3)'outer' 表示进行合并时保留两表格匹配列的全部内容,相互缺失的内容填入nan值;

        (4)'inner' 表示合并时仅保留两表格匹配列共同拥有的内容,其余进行删除处理;

3、on=[] 表示选定匹配列操作,匹配列必须是两表格的同名列,可选择多列进行匹配;

4、sort= 表示对匹配列的排序策略,True表示排序,False表示不排序;

5、suffixes=() 表示对两列表合并时非匹配列的同名列进行重命名工作,默认在同名列后面加"_x", "_y"

6、indicator= 表示是否显示对应行来自的表格,相当于添加来源项属性,Ture表示添加,False表示不添加;

7、validate= 用于检测两表格匹配列间的对应关系,若不符合对应关系会报错,

        (1)“one_to_one”或“1:1”:检查对应列在左表格和右表格中是否唯一,(是否为1对1关系);

        (2)“one_to_many”或“1:m”:检查对应列在左表格中是否唯一,(是否为1对多关系);

        (3)“many_to_one”或“m:1”:检查对应列在右表格中是否唯一,(是否为多对1关系);

        (4)“many_to_many”或“m:m”:不进行检测(任意关系都可)。

import pandas as pd


data = pd.merge(data1, data2[['列名1', '列名2', '列名3']], how='inner', on=['列名3'], sort=False, suffixes=("_x", "_y"), indicator=False, validate=None)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值