我在python中使用nltk.stem.porter.PorterStemmer
来获取词干。
当我得到“女性”和“女性”的词干时,我分别得到了不同的结果:“女性”和“女性”。为了我的目的,我需要让两个词具有相同的词干。
在我的思路中,两个词都指的是相同的想法/概念,并且几乎是同一个词进行转换,因此它们应该具有相同的词干。
为什么我会得到两个不同的结果?这是对的吗?
答案 0 :(得分:3)
在引理之前,必须对文本进行标记。
没有标记化:
>>> from nltk import word_tokenize
>>> from nltk.stem import WordNetLemmatizer
>>> wnl = WordNetLemmatizer()
>>> [wnl.lemmatize(i) for i in "the woman's going home".split()]
['the', "woman's", 'going', 'home']
>>> [wnl.lemmatize(i) for i in "the women's home is in London".split()]
['the', "women's", 'home', 'is', 'in', 'London']
使用标记化:
>>> [wnl.lemmatize(i) for i in word_tokenize("the woman's going home")]
['the', 'woman', "'s", 'going', 'home']
>>> [wnl.lemmatize(i) for i in word_tokenize("the women's home is in London")]
['the', u'woman', "'s", 'home', 'is', 'in', 'London']