Python 两列之间的字符串匹配

Python 两列之间的字符串匹配,python,string,Python,String,下面的代码不工作,需要帮助。我试图使用python比较两个列。我想检查“c1”列下的字符串是否在“Name”列中。我想要的结果是1或0 for i in string_match["c1"]: for j in string_match["Name"]: if i in j: result = "1" else: result = "0" 这是另一个可行的选择。 string_match['new']=string_match.apply(x.C

下面的代码不工作,需要帮助。我试图使用python比较两个列。我想检查“c1”列下的字符串是否在“Name”列中。我想要的结果是1或0

for i in string_match["c1"]:
for j in string_match["Name"]:
    if i in j:
        result = "1"
    else:
        result = "0"
这是另一个可行的选择。 string_match['new']=string_match.apply(x.Component_Name_EDS中的lambda x:x.c1,轴=1)


如果我误解了你的问题,请纠正我。 如果只想将各自的行与第一列字符串进行比较。下面应该可以工作,这里
a
b
是数据帧的列

df.apply(lambda x: x.a in x.b, axis=1)
但如果您想将每个单词与第二列中的每个其他单词进行比较,并在与第二列中的任何一个字符串匹配时返回1,则

for word in df.a:
 print("1" if any(df.b.apply(lambda x: word in x)) else "0")

虽然这不是最有效的解决方案,但您始终可以使用哈希进行字符串比较。

如果替代解决方案有效,那么您想要什么?我想我在问题中提到过,我仍然需要理解为什么第一种方法不起作用。