按模式过滤熊猫



我试图通过其中一列是否在字符串中有单词来过滤数据帧,我尝试了以下操作:

text="Abacus and androgeny and for"
tokenized = tknzr.tokenize(text.lower())
pattern= "|".join(tokenized)
lexicon = lexicon[lexicon["English (en)"].str.match(pattern, na = False)]

这实际上不起作用,因为像伪造一样以"for"开头的单词会匹配。为了明确起见,我只希望行与文本中的某个单词完全匹配。

如果我理解正确,您只是在使用match来确定列中的单词是否是文本中的单词之一?如果是的话,我会试试:

lexicon = lexicon[lexicon["English (en)"].isin(tokenized)]

通过这种方式,匹配将针对确切的单词,因为它会将其与单词列表进行比较。

最新更新