Python迭代行和匹配值

问题描述 投票:1回答:1

当需要时,我需要在df1中有一个结果列>

条件1:df1的Column1中的每一行的值与df2的Column1中的值匹配(如果为true,则应移至condition2),例如df1的A1应与df2的A1匹配,并且类似地适用于A2,依此类推。

条件2:如果第一个条件为true,则它也应与第二列匹配。 B2(df1)应该等于B2(df2)。

结果列在df1中。并在两个条件都为真时在相应的行中返回“匹配”或“不匹配”。

我已经尝试了以下代码,但它匹配整个列,而不是逐行。 (我假设)

import pandas as pd 
#reading data
df1 = pd.read_excel("Book1.xlsx")
df2 = pd.read_excel("Book2.xlsx")
c1 = df1['EFE'] == df2['EFE'] #EFE IS COLUMN 1
c2 = df1['DOR'] == df2['DOR'] #DOR IS COLUMN 2
#Giving No error but result is not as desired. Each EFE is marked not good
if c1 is True and c2 is True:
   df1['Result'] = "Good"
else:
   df1['Result'] = "Not Good"

代码已编辑。更新最新更改。

我需要在df1中有一个结果列,当条件1:df1的Column1中的每一行的值与df2的Column1中的值匹配(如果为true,则应移至condition2),例如df1的A1应该与...匹配。

python pandas iteration rows
1个回答
1
投票

尝试一下:

最新问题
© www.soinside.com 2019 - 2025. All rights reserved.