Я пытаюсь напечатать оценку валентности для каждого лексикона (слова) в предложении, используя vader, но в процессе я запутался. Я могу сортировать слова в предложении на положительные, отрицательные и нейтральные с помощью вейдера. Я также хочу напечатать оценку валентности. Как к этому подойти?
sid = SentimentIntensityAnalyzer()
pos_word_list=[]
neu_word_list=[]
neg_word_list=[]
for word in tokenized_sentence:
if (sid.polarity_scores(word)['compound']) >= 0.1:
pos_word_list.append(word)
sid.score_valence(word)
elif (sid.polarity_scores(word)['compound']) <= -0.1:
neg_word_list.append(word)
else:
neu_word_list.append(word)
print('Positive:',pos_word_list)
print('Neutral:',neu_word_list)
print('Negative:',neg_word_list)
score = sid.polarity_scores(sentence)
print('\nScores:', score)
Это код, который я видел здесь. Я хочу напечатать это как
Positive: ['happy', 1.3]
Neutral: ['paper', 0, 'too', 0, 'much', 0]
Negative: ['missed', -1.2, 'stupid', -1.9]
Scores: {'neg': 0.491, 'neu': 0.334, 'pos': 0.175, 'compound': -0.5848}
таким образом показывая, что слово «счастливый» имеет в предложении 1,3 балла валентности.