AFINN sentiment analysis: a wordlist-based approach to sentiment analysis ported from the Python implementation to Typescript.
yarn add afinn.ts
A demonstration of the afinn.ts
module can be found in use at https://cmpadden.github.io/afinn.ts-demo/ with source code in the
cmpadden/afinn.ts-demo repository.
import Afinn from "afinn.ts";
const afinn = Afinn({ language: "en" });
afinn.score("This is utterly excellent!");
In Danish:
const afinn = Afinn({ language: "da" });
afinn.score("Hvis ikke det er det mest afskyelige flueknepperi...");
In Finnish:
const afinn = Afinn({ language: "fi" });
afinn.score("Siellä on uusi hyvä juttu, katsokaa ja kuunnelkaa ihmeessä.");
In Swedish:
const afinn = Afinn({ language: "sv" });
afinn.score("det är inte bra");
In Turkish:
const afinn = Afinn({ language: "tr" });
afinn.score("iyi de\u011Fil");
const afinn = Afinn({ language: "tr" });
afinn.score("iyi değil");
With emoticons:
const afinn = Afinn({ language: "emoticons" });
afinn.score("I saw that yesterday :)");
NOTE: there are plans to add emoticon support to all languages, as is done in the Python implementation.
Nielsen's original citation can be found here:
Finn Årup Nielsen, "A new ANEW: evaluation of a word list for sentiment analysis in microblogs", Proceedings of the ESWC2011 Workshop on 'Making Sense of Microposts': Big things come in small packages. Volume 718 in CEUR Workshop Proceedings: 93-98. 2011 May. Matthew Rowe, Milan Stankovic, Aba-Sah Dadzie, Mariann Hardey (editors)