diff --git a/analysis/mlsentiment/locales/en-US/mlsentiment.html b/analysis/mlsentiment/locales/en-US/mlsentiment.html index 8e9f5c9d..b17242f8 100644 --- a/analysis/mlsentiment/locales/en-US/mlsentiment.html +++ b/analysis/mlsentiment/locales/en-US/mlsentiment.html @@ -4,14 +4,16 @@
{ word:score,... }
.{ word:score,... }
.{ ['世界',...] }
.{ word:score,... }
{ ['世界',...] }
.ゼロ以上のスコアはポジティブ、ゼロ以下はネガティブを意味します。
スコアの範囲は通常-5から+5ですが、より大きかったり小さかったりすることもあります。
詳細はthe Multilang-Sentiment docs hereを参照してください。
- + \ No newline at end of file diff --git a/analysis/mlsentiment/mlsentiment.js b/analysis/mlsentiment/mlsentiment.js index f9bb85fa..04875fe5 100644 --- a/analysis/mlsentiment/mlsentiment.js +++ b/analysis/mlsentiment/mlsentiment.js @@ -1,28 +1,29 @@ -module.exports = function(RED) { +module.exports = function (RED) { "use strict"; var multilangsentiment = require('multilang-sentiment'); function MultiLangSentimentNode(n) { - RED.nodes.createNode(this,n); + RED.nodes.createNode(this, n); this.lang = n.lang; - this.property = n.property||"payload"; + this.property = n.property || "payload"; var node = this; - this.on("input", function(msg) { - var value = RED.util.getMessageProperty(msg,node.property); + this.on("input", function (msg) { + var value = RED.util.getMessageProperty(msg, node.property); if (value !== undefined) { if (msg.hasOwnProperty("overrides")) { msg.extras = msg.overrides; delete msg.overrides; } - multilangsentiment(value, node.lang || msg.lang || 'en', {words: msg.extras || null}, function (err, result) { + multilangSentiment(value, node.lang || msg.lang || 'en', { 'words': msg.words || null, 'tokens': msg.tokens || null }, function (err, result) { msg.sentiment = result; + msg.sentiment.comparative = msg.sentiment.score / msg.sentiment.tokens.length; // temporarily addresses an issue in v2.0.0: https://github.com/marcellobarile/multilang-sentiment/issues/10 node.send(msg); }); } else { node.send(msg); } // If no matching property - just pass it on. }); } - RED.nodes.registerType("mlsentiment",MultiLangSentimentNode); + RED.nodes.registerType("mlsentiment", MultiLangSentimentNode); } diff --git a/analysis/mlsentiment/package.json b/analysis/mlsentiment/package.json index 7b54370c..d3b3f3f3 100644 --- a/analysis/mlsentiment/package.json +++ b/analysis/mlsentiment/package.json @@ -1,19 +1,25 @@ { - "name" : "node-red-node-multilang-sentiment", - "version" : "0.1.0", - "description" : "A Node-RED node that uses the AFINN-165 wordlists for sentiment analysis of words translated into multiple languages including emojis.", - "dependencies" : { - "multilang-sentiment" : "^1.2.0" + "name": "node-red-node-multilang-sentiment", + "version": "0.2.0", + "description": "A Node-RED node that uses the AFINN-165 wordlists for sentiment analysis of words translated into multiple languages including emoji.", + "dependencies": { + "multilang-sentiment": "^2.0.0" }, - "repository" : { - "type":"git", - "url":"https://github.com/node-red/node-red-nodes.git", - "directory" : "tree/master/analysis/mlsentiment" + "repository": { + "type": "git", + "url": "https://github.com/node-red/node-red-nodes.git", + "directory": "tree/master/analysis/mlsentiment" }, "license": "Apache-2.0", - "keywords": [ "node-red", "sentiment", "anaylsis", "AFINN" ], - "node-red" : { - "nodes" : { + "keywords": [ + "node-red", + "sentiment", + "anaylsis", + "AFINN", + "emoji" + ], + "node-red": { + "nodes": { "mlsentiment": "mlsentiment.js" } }, @@ -21,5 +27,8 @@ "name": "Dave Conway-Jones", "email": "ceejay@vnet.ibm.com", "url": "http://nodered.org" - } -} + }, + "contributors" : [ + "Chuan Khoo