我有一个名为kw的df,看起来像这样:
Words Score
Hello Joe 2
Where is the market 3
Do you speak english 4
Where am I?
我有一个这样的辅助列表(kw2):
Strings Label
Market Action
Speak English Question
Am I Question
我想做什么:我想在我的第一个列表(kw)中找到包含第二个df(kw2)中的单词的所有字符串,然后找到匹配项,创建一个包含匹配单词的新列。这些必须是'精确'匹配(即'风'不能匹配'缠绕')
基于上面的例子,我想要的输出是这样的:
Words Score Match
Hello Joe 2 N/A
Where is the market? 3 market
Do you speak english 4 speak english
where am I 1 am i
有没有办法在熊猫中实现这一目标?
编辑:这是我到目前为止所尝试的完全不起作用的内容!
def findwords(w,string):
pattern = re.compile(r'\b({0})\b'.format(w), flags=re.IGNORECASE)
if pattern.search(string):
return kw['Match'] = w
else:
return False
findwords(kw,kw2))