sentiment-analysis-example.js

This was just a quick example of how you can use the sentiment-analysis module to determine out how positive of negative a sentence is, without making any network calls.

Run npm install sentiment-analysis to install the package first.

// Include the sa module, needs installing first (npm install sentiment-analysis)
const sentimentAnalysis = require('sentiment-analysis');

/**
 * Gets the sentiment of a sentence
 * using the sentiment-analysis module
 * formats it, and prints to console
*/
function displaySentiment(inputText, sentimentScore){

 // Determine if the score is positive, neutral or negative
  let overallSentiment = 'neutral';
  if (sentimentScore > 0.2) overallSentiment = 'positive';
  else if (sentimentScore < -0.2) overallSentiment = 'negative';

  // Get persnt from score
  const persentageScore = `${sentimentScore * 100}%`;

  // This is the sentence to return (e.g. 40% positive)
  const sentence = `${persentageScore} (${overallSentiment})  `;

  return sentence;
}

/**
* Returns a color to represent the sentimentScore
* Either green, yellow or red. In the console format
*/
function getChalkColor(sentimentScore){
  let chalkColor = '\x1b[33m';
  if(sentimentScore > 0.2) chalkColor = '\x1b[32m';
  else if(sentimentScore < -0.2) chalkColor = '\x1b[31m';
  return chalkColor;
}

// Array of example text, to calculate sentiments from
const exampleText = [
  'I am so angry about this useles product that fraudster sold me',
  'Really cant be bothered with this dumb assignment, will do it tomorrow',
  'What a gloomy day in London, wish the smog would lift a little',
  'Going to write my next app in Node.js, as I like it so much more then C#',
  'Whos in town tonight, and wants to head to the City Arms to watch the match?',
  'Though the latest iPhone is ok, I still dont like it compared to Android',
  'Just discovered the chip sandwitch, best end to a great night out ever!',
  'Congratulations to my best friend who has just married her lovely man!',
  'Super happy about the great result for England in that terrific football match'
];

// Iterate though each sentence, calculate sentiment and color, then print to console
for (var text of exampleText) {

  const sentiment = sentimentAnalysis(text); // Get the senitment score
  const color = getChalkColor(sentiment); // Get a colour to represent score
  const resetColor = '\x1b[36m'; // Default text color

  // Actuall print the results to the console (in color!)
  console.log(color, displaySentiment(text, sentiment), resetColor, '\t'+text);
}

Output of the above script
Example Output