【发布时间】:2018-08-17 22:54:38
【问题描述】:
我有一个标记列表,需要在文本中找到它们。我正在使用pandas 来存储我的文本。但是,我注意到有时我正在寻找的标记拼写错误,因此我正在考虑添加 Levenshtein 距离来挑选那些拼写错误的标记。目前,我实现了一个非常简单的方法:
df_texts['Text'].str.findall('|'.join(list_of_tokens))
完美的发现。我的问题是如何添加edit_distance 来说明拼写错误的令牌? NLTK packages 提供了一个很好的计算编辑距离的函数:
from nltk.metrics import edit_distance
>> edit_distance('trazodone', 'trazadon')
>> 2
在上面的示例中,trazodone 是正确的标记,而 trazadon 拼写错误,应该从我的文本中检索。
理论上,我可以检查文本中的每个单词并测量编辑距离来确定它们是否相似,但这将非常低效。有什么pythonian的想法吗?
【问题讨论】:
标签: python pandas nlp nltk edit-distance