Python SentiStrength двоичный счет выводит только 1 балл - PullRequest
0 голосов
/ 15 января 2020

В настоящее время я работаю над анализом текста с использованием библиотеки SentiStrength python по команде result = senti.getSentiment(cs, score='binary'). Во-первых, я запускаю его в блокноте Jupyter, и он работает хорошо. Он выводит 2 оценки, которые являются положительными и отрицательными оценками настроения, такими как [(2,-1)]. Тем не менее, когда я пытаюсь запустить его в командной строке Anaconda или Spyder. Выводит только 1 значения типа [1] и я не понимаю почему. Я думаю, это потому, что я запускаю его в другой среде. Я хотел бы спросить, как я мог запустить эту команду в командной строке anaconda или другой IDE, чтобы она могла правильно выводить результат? или я сделал что-то не так.

1 Ответ

0 голосов
/ 05 февраля 2020
    if score == 'scale': # Returns from -1 to 1
        senti_score = [sum(senti_score[i:i+2])/4 for i in range(0, len(senti_score), 3)]
    elif score == 'binary': # Return 1 if positive and -1 if negative
        senti_score = [1 if senti_score[i] >= abs(senti_score[i+1]) else -1 for i in range(0, len(senti_score), 3)]
    elif score == 'trinary': # Return Positive and Negative Score and Neutral Score
        senti_score = [tuple(senti_score[i:i+3]) for i in range(0, len(senti_score), 3)]
    elif score == 'dual': # Return Positive and Negative Score
        senti_score = [tuple(senti_score[i:i+2]) for i in range(0, len(senti_score), 3)]
    else:
        return "Argument 'score' takes in either 'scale' (between -1 to 1) or 'binary' (two scores, positive and negative rating)"
    return senti_score

возникла та же проблема, он посмотрел на исходный код и обнаружил ошибку в документации. Вы должны использовать 'dual' для типа счета.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...