VaderSentiment:无法更新表情符号情绪得分

VaderSentiment: unable to update emoji sentiment score

如题所示,代码如下:

from vaderSentiment.vaderSentiment import SentimentIntensityAnalyzer

new_words = {
    '': 4.0,
}

sia = SentimentIntensityAnalyzer()
sia.lexicon.update(new_words)
sia.polarity_scores('')

原始词典认为给定的表情符号是负面的,但我希望它是正面的。然而,按照上面的代码更新似乎根本不起作用:

{'neg': 1.0, 'neu': 0.0, 'pos': 0.0, 'compound': -0.34}

显然维德在提取情绪之前将表情符号转换为它们的词表示。您可以在“site-packages/vaderSentiment/emoji_utf8_lexicon.txt”中找到此映射。

将代码更新为:

new_words = {
    'fire': 4.0,
}

有效。