from nltk.stem import PorterStemmer
english_stemmer = PorterStemmer()
class StemmedTfidfVectorizer(TfidfVectorizer):
def build_analyzer(self):
analyzer = super(TfidfVectorizer, self).build_analyzer()
return lambda doc: english_stemmer.stemWords(analyzer(doc))
我是python的新手,在构建代码时遇到问题。当我运行上面的代码时,错误如下所示:
返回lambda doc:english_stemmer.stemWords(analyzer(doc)) AttributeError:' PorterStemmer'对象没有属性' stemWords'
答案 0 :(得分:1)
这是因为PorterStemmer nltk实现中没有方法'stemWords'。
这是一个小例子:
from nltk.stem import PorterStemmer
stemmer = PorterStemmer()
print(stemmer.stem('Running'))
运行
您可以在这里阅读更多内容: http://www.nltk.org/howto/stem.html