问题陈述
想要str.contains
在具有条件的 df 列之间进行到具有以下条件的另一列
1st 想看到1_Match
或者1_1_Match
是 Yes 或 No,如果是 No 则2_Match
变得不适用
如果 1_Match 为Yes或 1_1_Match 为 Yes,则要检查Country
(EU) 是否在/包含Nation
(Europe)。如果是,则2_Match
变为是
如果Country
(APAC) 和Nation
(India)之间不包含或不存在部分匹配,则2_Match
变为No
DF1
Country Nation 1_Match 1_1_Match
EU Europe Yes No
MA MACOPEC No No
APAC INDIA Yes No
COPEC MACOPEC No Yes
COPEC India No Yes
预期输出:
DF1
Country Nation 1_Match 1_1_Match 2_Match
EU Europe Yes No Yes
MA MACOPEC No No Not Applicable
APAC INDIA Yes No No
COPEC MACOPEC No Yes Yes
Copec India No Yes No
代码(不工作):我正在为条件 2 和 3 编写代码,但它抛出错误,然后我也想适应条件 1
df1['2_Match'] = np.where(df1['Country'].str.strip().str.lower().str.contains(df1['Nation'].str.strip().str.lower().astype(str)),'Yes','No')
皈依舞
相关分类