pandas同时匹配两列数据,python 两个列表拼接
在excel处理大量数据匹配的过程中,虽然可以使用vlookup,但是当数据量超过10万进行批量匹配时,效率很差,所以使用python。经过调查发现,python可以通过熊猫库的合并实现类似于SQL中join的功能。有关详细信息,请参考以下内容:
https://pandas . pydata . org/pandas-docs/stable/getting _ started/comparison/comparison _ with _ SQL . html # compare-with-SQL-join
导入熊猫作为pd导入numpy作为np # % %带PD。excel file( xx . xlsx )as xls:DF1=PD . read _ excel(xls, Sheet1) df2=pd.read_excel(xls,Sheet2) outer=pd.merge (DF1,df2,on= key )outer . to _ excel( outer _ function . xlsx ,index=false,encoding= UTF-8 )最终实现Sheet1和Sheet2基于同一个键字段的匹配拼接。
不知道为什么,上面的方法总是或多或少的。为了顺序匹配,如果有遗漏我也手动补充。我采用了下面的方法,其中结果的格式和内容顺序都是基于df1的,方便直接复制和补充df1中的缺失数据。
outer=PD . merge(df1 . drop _ duplicates(),df2.drop _ duplicates(),left _ on= link ,right_on= link ,how= outer )outer . to _ excel(r h:\ e \ e
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。