@alvas Я согласен. Но тогда я знал, знаю другое место, где это можно было бы спросить. На самом деле не знал о проблеме (только видел ваш ответ). Я думал, что это была ошибка / интенциональные особенности во внутренней работе НЛТК

аюсь лемматизировать все слова в предложении с помощью WordNetLemmatizer NLTK. У меня есть несколько предложений, но я просто использую первое предложение, чтобы убедиться, что я делаю это правильно. Вот что у меня есть:

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)

Ваш ответ на вопрос