如何使用Python将包含stopword的短语视为单个标记nltk.tokeniz公司

2024-05-16 06:40:36 发布

您现在位置:Python中文网/ 问答频道 /正文

字符串可以通过使用nltk.tokenize删除一些不必要的停止字来标记。但是,如何在删除其他非索引词的同时,将包含非索引词的短语标记为单个标记?在

例如:

输入:特朗普是美国总统。在

输出:【‘特朗普’,‘美国总统’】

我怎样才能得到只删除“is”和第一个“the”但不删除“of”和第二个“the”的结果?在


Tags: ofthe字符串标记is总统tokenizenltk
1条回答
网友
1楼 · 发布于 2024-05-16 06:40:36

您可以使用nltk的Multi-Word Expression Tokenizer,它允许将多个单词表达式合并为单个标记。您可以创建包含多个单词表达式的词典,并按如下方式向其中添加条目:

from nltk.tokenize import MWETokenizer
mwetokenizer = MWETokenizer([('President','of','the','United','States')], separator=' ')
mwetokenizer.add_mwe(('President','of','France'))

请注意,MWETokenizer将标记化文本的列表作为输入,并重新标记它。因此,首先用word_tokenize()标记句子,然后将其输入MWETokenizer:

^{pr2}$

然后,过滤掉停止词,得到最后过滤的标记化句子:

^{3}$

输出:

['Trump', 'President of the United States', ',', 'Macron', 'President of France', '.']

相关问题 更多 >