Как отредактировать лексикон настроений NLTK VADER без изменения текстового файла

Я знаю, что вы можете добавлять свои собственные слова, добавляя их вручную в файл vader_lexicon.txt. Мне было интересно, есть ли другой способ сделать это в коде Python, поскольку я не хочу, чтобы люди, использующие мой код, должны были затем изменять другие файлы .txt.

from nltk.sentiment.vader import SentimentIntensityAnalyzer as SIA

sia = SIA()
sia.lexicon

Это получит диктат. Думал что-то вроде:

sia.lexicon.update{u'word': 3}

person HaveAnAverageDay    schedule 16.04.2018    source источник


Ответы (2)


Для всех остальных:

from nltk.sentiment.vader import SentimentIntensityAnalyzer

new_words = {
    'foo': 2.0,
    'bar': -3.4,
}

SIA = SentimentIntensityAnalyzer()

SIA.lexicon.update(new_words)
person repoleved    schedule 01.05.2018

Я думаю, это ответ.

 sia.lexicon.update({u'word': 3.1})
person HaveAnAverageDay    schedule 16.04.2018