Awesome
Wat
Simple text sentiment analyser.
Install
npm install --save ml-sentiment
Usage
const ml = require('ml-sentiment')();
ml.classify('Rainy day but still in a good mood');
//=> 2 ... (overall positive sentiment)
How
Returns a positive number for positive sentiment association and negative number for negative sentiment association.
Basics
var longSentence = `Transform json to csv data. The difference to my other
module json2csv is json2csv-stream uses streams for transforming the incoming
data. The module is built with the new streaming API from Node.js v0.10.0 but
maintains backwards compatibility to earlier Node.js versions. Listen for
header and line events or pipe the data directly to a readable stream.`
const ml = require('ml-sentiment')();
ml.classify(longSentence);
//=> 0 ... (very boring encyclopedia like text)
ml.classify('Rainy day but still in a good mood');
//=> 2 ... (overall positive sentiment)
Negations
const ml = require('ml-sentiment')();
ml.classify(`not awesome`);
//=> -3 (negative)
ml.classify(`awesome`);
//=> 3 (positive)
German
const ml = require('ml-sentiment')({lang: 'de'});
ml.classify(`Es ist nicht so toll`);
//=> (negative)
Credits
Original model and data: Finn Årup Nielsen, "A new ANEW: Evaluation of a word list for sentiment analysis in microblogs", http://arxiv.org/abs/1103.2903
For german model: R. Remus, U. Quasthoff & G. Heyer: SentiWS - a Publicly Available German-language Resource for Sentiment Analysis. In: Proceedings of the 7th International Language Ressources and Evaluation (LREC'10), 2010