执行下面的代码后,
df1.merge(df2, on=['Customer_id'], indicator='Status', how='outer')
我明白了,
现在我想比较 Name_x 中的所有元素是否等于 Name_y,对于其他列也是如此。我正在做的是单独比较它。这是我的代码:
df3.assign(Status1=df3.Name_x == df3.Name_y)
df3.assign(Status2=df3.Age_x == df3.Age_y)
等等
完成上述操作后,我得到,
我可以写for循环,这样我就不必写代码了
df3.assign()
单独比较每两列?
最重要的是我的最终状态栏应该是这样的,
我正在做的是想写如果 elif是这样的:
定义 f(行):
if row['Status1'] == 'True' and row['Status2'] == 'False': val = 'Matching for column {Name}' elif row['Status1'] == 'False' and row['Status1'] == 'True': val = 'Matching for column {Age} elif row['Status1'] == 'False' and row['Status1'] == 'False': val = 'Not Matching at all' #and so on... return val
如果一个人只想 在两列Status1 和 Status2上写if elif是可以的,如果一个人想在超过 2 个列上写if elif就会变得冗长。如果我也有Status3列,我可以用几行代码获得所需的输出吗?