Python 两列之间的字符串匹配
下面的代码不工作,需要帮助。我试图使用python比较两个列。我想检查“c1”列下的字符串是否在“Name”列中。我想要的结果是1或0Python 两列之间的字符串匹配,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
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")
虽然这不是最有效的解决方案,但您始终可以使用哈希进行字符串比较。如果替代解决方案有效,那么您想要什么?我想我在问题中提到过,我仍然需要理解为什么第一种方法不起作用。