我正在尝试使用NLTK的WordNetLemmatizer对句子中的所有单词进行词法化。我有一堆句子,但只是使用第一句话来确保我正确地做到了。这是我所拥有的:train_sentences[0]"Explanation Why edits made username Hardcore Metallica Fan reverted? They vandalisms, closure GAs I voted New York Dolls FAC. And please remove template talk page since I'm retired now.89.205.38.27"因此,现在我尝试对每个词进行词素化,如下所示:lemmatizer = WordNetLemmatizer()new_sent = [lemmatizer.lemmatize(word) for word in train_sentences[0].split()]print(new_sent)我回来了:['Explanation', 'Why', 'edits', 'made', 'username', 'Hardcore', 'Metallica', 'Fan', 'reverted?', 'They', 'vandalisms,', 'closure', 'GAs', 'I', 'voted', 'New', 'York', 'Dolls', 'FAC.', 'And', 'please', 'remove', 'template', 'talk', 'page', 'since', "I'm", 'retired', 'now.89.205.38.27']几个问题:1)为什么“编辑”不能转换为“编辑”?诚然,如果我lemmatizer.lemmatize("edits")回来了,我edits很惊讶。2)为什么“故意破坏”没有转变为“故意破坏”?这是非常令人惊讶的,因为如果我这样做lemmatizer.lemmatize("vandalisms"),我就会回来vandalism...任何澄清/指导都将很棒!
2 回答
慕田峪4524236
TA贡献1875条经验 获得超5个赞
这确实是
nltk
社区能够回答的事情。之所以发生这种情况,是因为
,
的结尾vandalisms,
。要删除此结尾,
,可以使用.strip(',')
或使用此处所述的多行定界符。
添加回答
举报
0/150
提交
取消