Python将excel工作表的两列作为一对进行比较



我有一本工作簿,里面有两张excel表。我想比较两列作为一对第一张excel表和两列在一对第二张excel表。

感谢

通过引入pandasql,设置操作变得更容易。看看这个:

import pandas as pd
import pandasql as ps
df1 = pd.read_excel(file, sheet_name = 'Sheet 1')
df2 = pd.read_excel(file, sheet_name = 'Sheet 2')

df_res = ps.sqldf("""select select case when df2.col1 is null 
then 'no match' 
else 'they match' end as do_they_match
from df1
left join df2
on df1.col1 = df2.col1
and df1.col2 = df2.col2 """, locals())

您可以尝试以下方法在每个列中添加前两列(如果它们是字符串,则会连接(,然后比较每个列中的值。这将要求它们的长度相同,并且这假设您希望根据位置而不是包含进行比较(在这种情况下,您可以合并这两列以查看匹配的内容(。

df1 = pd.read_excel(file, sheet_name = 'Sheet 1')
df2 = pd.read_excel(file, sheet_name = 'Sheet 2')
df1.iloc[:,0] + df1.iloc[:,1] == df2.iloc[:,0] + df2.iloc[:,1]

最新更新