positive phrase has negative score in vader function polarity_scores

289 Views Asked by At

In python's nltk.sentiment.vader, there is a function called polarity_scores, you can try to use the string no problem to see the result, which is -0.6.

How could I improve vader's performance. If not, is there any other package that does a better job?

1

There are 1 best solutions below

0
On

HI YOU WONT BELIEVE THIS BUT I WAS HAVING THE SAME PROBLEM AND NO ONE HELPED ME EITHER!!!!!!!!!!!

It's a year late and you probably don't care, but how I went about this is to go into the vader.py file - (you can find this file by running nltk.sentiment.vader.file in your Python shell) - and inside the file there is a dictionary of Negate Words within the class VaderConstants, add "no" to the list.

Now there is one more step. You need to run

sid.lexicon.pop('no')

where

sid = SentimentIntensityAnalyzer()

Because if a word is in the lexicon then it would not be treated as a negate word!