У меня есть список слов:
'AWS',
'jQuery',
'jQuery',
'Sliding',
'jQuery',
'jQuery',
'Manipulating',
'Us!'
Я удалил общеупотребительные слова, и мне нужно применить стемминг, чтобы сделать список слов более понятным.
Мой код для удаления общих слов:
raw2 = second_headers CORPUS = Common_word_corpus #my personal word corpus added here
corpus = [w.lower() for w in CORPUS]
processed_H2_tag = [w for w in raw2.split(' ') if w.lower() not in corpus]
print(processed_H2_tag)
Как насчет этого?
# download wordnet
import nltk
nltk.download('wordnet')
# import these modules
from nltk.stem import WordNetLemmatizer
from nltk.corpus import wordnet
nltk.download('wordnet')
lemmatizer = WordNetLemmatizer()
# choose some words to be stemmed
words = ['AWS',
'jQuery',
'jQuery',
'Sliding',
'jQuery',
'jQuery',
'Manipulating',
'Manipulateing',
'Manipulate',
'Us!']
for w in words:
print(w, " : ", lemmatizer.lemmatize(w.lower(), pos=wordnet.VERB))
Выход:
AWS : aws
jQuery : jquery
jQuery : jquery
Sliding : slide
jQuery : jquery
jQuery : jquery
Manipulating : manipulate
Manipulateing : manipulate
Manipulate : manipulate
Us! : us!
Реализация алгоритма формирования основы (портера) не дает вам точного контроля над тем, как генерируется основа. Основа на самом деле может быть другой от истинной лингвистической базовой формы. Вместо этого вы ищете подход лемматизации?
да, подход лемматизации будет уместен, если это позволит получить чистый вывод. Как это сделать?
Я обновил ответ в соответствии с вашим комментарием.
получение ошибки NameError <ipython-input-16-f67d9d8aff5f> в <module> 2 из nltk.stem import WordNetLemmatizer 3 из nltk.corpus import wordnet ----> 4 nltk.download('wordnet') 5 6 lemmatizer = WordNetLemmatizer() NameError: имя 'nltk' не определено
Виноват. Забыл import nltk
. Будет обновляться.
Он работает именно так, как нужно. Спасибо за решение
Я получаю вывод, подобный этому ... но такие слова, как манипулирование, следует понимать как манипулирование. AWS : aw jQuery : jqueri jQuery : jqueri Скольжение : слайд jQuery : jqueri jQuery : jqueri Управление : манипулирование Нас! : нас!