我有一个NLTK/Python词干列表,想要获得可以创建该词干的可能单词列表。
在Python中,是否有一种方法可以获取一个词干,并获得可以转化为该词干的单词列表?
在Python中,是否有一种方法可以获取一个词干,并获得可以转化为该词干的单词列表?
from nltk.stem.porter import *
stemmer = PorterStemmer()
stemmer.stem('grabfuled')
# results in "grab"
from nltk.stem.porter import *
from collections import defaultdict
vocab = set(['grab', 'grabbing', 'grabbed', 'run', 'running', 'eat'])
# Here porter stemmer, but can be any other stemmer too
stemmer = PorterStemmer()
d = defaultdict(set)
for v in vocab:
d[stemmer.stem(v)].add(v)
print(d)
# defaultdict(<class 'set'>, {'grab': {'grab', 'grabbing', 'grabbed'}, 'eat': {'eat'}, 'run': {'run', 'running'}})
print(d['grab'])
# {'grab', 'grabbed', 'grabbing'}
为了建立词汇表,您可以对语料库进行分词,或使用nltk内置的英语单词词典。