Я использую Google Natural Language API для создания тональности из фрагмента текста.
Из собственных документов Google:
Оценка тональности колеблется от -1,0 (отрицательно) до 1,0 (положительно) и соответствует общей эмоциональной направленности текста. Величина указывает на общую силу эмоций (как положительных, так и отрицательных) в данном тексте в диапазоне от 0,0 до +inf. В отличие от оценки, величина не нормализована; каждое выражение эмоций в тексте (как положительное, так и отрицательное) вносит свой вклад в величину текста (поэтому более длинные текстовые блоки могут иметь большую величину).
Моя цель — получить единое число "общего настроения" от 1 до 10. Старый API Google, используемый для возврата настроения с использованием одного числа от -100 до +100. который было легко сопоставить, используя что-то вроде.
function map_range(value, low1, high1, low2, high2) {
return low2 + (high2 - low2) * (value - low1) / (high1 - low1);
}
Math.round(map_range(SENTIMENT, -100, 100, 0, 10));
Поскольку Google обесценил старый API, я перешел на новый, но чтобы восстановить функциональность остальной части моего приложения, мне нужно сопоставить эти два числа обратно между 1 и 10. Надеюсь, это имеет смысл!