Aik*_*kin 9 python porter-stemmer nltk
我是python的新手并且练习书中的例子.
任何人都可以解释为什么当我试图用这个代码阻止一些例子什么都没有改变?
>>> from nltk.stem import PorterStemmer
>>> stemmer=PorterStemmer()
>>> stemmer.stem('numpang wifi stop gadget shopping')
'numpang wifi stop gadget shopping'
Run Code Online (Sandbox Code Playgroud)
但是,当我这样做时,它有效
>>> stemmer.stem('shopping')
'shop'
Run Code Online (Sandbox Code Playgroud)
Sam*_*zzo 11
试试这个:
res = ",".join([ stemmer.stem(kw) for kw in 'numpang wifi stop gadget shopping'.split(" ")])
Run Code Online (Sandbox Code Playgroud)
可能的问题是,词干分析器只能用于单个单词.你的字符串没有"root"字样,而单词"shopping"则有根"shop".所以你必须分别计算词干
编辑:
从他们的源代码 - >
Stemming algorithms attempt to automatically remove suffixes (and in some
cases prefixes) in order to find the "root word" or stem of a given word. This
is useful in various natural language processing scenarios, such as search.
Run Code Online (Sandbox Code Playgroud)
所以我猜你确实被迫自己分裂你的弦