我需要一个用于文本预处理阶段的好的Python词干提取模块。
我找到了这个:
http://pypi.python.org/pypi/PyStemmer/1.0.1
但是我在提供的链接中找不到文档。
如果有人知道在哪里可以找到文档或任何其他好的词干提取算法,请帮忙。
我需要一个用于文本预处理阶段的好的Python词干提取模块。
我找到了这个:
http://pypi.python.org/pypi/PyStemmer/1.0.1
但是我在提供的链接中找不到文档。
如果有人知道在哪里可以找到文档或任何其他好的词干提取算法,请帮忙。
你可以尝试使用NLTK
>>> from nltk import PorterStemmer
>>> PorterStemmer().stem('complications')
所有讨论过的词干提取器都是基于算法的,因此它们可能会产生意料之外的结果,例如:
In [3]: from nltk.stem.porter import *
In [4]: stemmer = PorterStemmer()
In [5]: stemmer.stem('identified')
Out[5]: u'identifi'
In [6]: stemmer.stem('nonsensical')
Out[6]: u'nonsens'
>>> import hunspell
>>> hobj = hunspell.HunSpell('/usr/share/myspell/en_US.dic', '/usr/share/myspell/en_US.aff')
>>> hobj.spell('spookie')
False
>>> hobj.suggest('spookie')
['spookier', 'spookiness', 'spooky', 'spook', 'spoonbill']
>>> hobj.spell('spooky')
True
>>> hobj.analyze('linked')
[' st:link fl:D']
>>> hobj.stem('linked')
['link']
stem('nonsense') == stem('nonsensical') != stem('bananas')
就可以了。 - umop aplsdn >> from stemming.porter2 import stem
>> stem("factionally")
faction
话题建模中的gensim
软件包配备了Porter Stemmer算法:
>>> from gensim import parsing
>>> gensim.parsing.stem_text("trying writing nonsense")
'try write nonsens'
gensim
中实现的唯一词干提取选项是PorterStemmer。PyStemmer是Snowball词干提取库的Python接口。
文档可以在这里找到: https://github.com/snowballstem/pystemmer/blob/master/docs/quickstart.txt https://github.com/snowballstem/pystemmer/blob/master/docs/quickstart_python3.txt