A Laravel wrapper to perform sentiment analysis over an English sentence
PHP
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
src
tests
.gitignore
.travis.yml
LICENSE.md
README.md
composer.json
phpunit.xml

README.md

Laravel Sentiment Analysis

Build Status Software License Latest Version

Introduction

A Laravel wrapper for phpInsight.

Installation

PHP 5.4+ or HHVM 3.3+, and Composer are required.

To get the latest version of Laravel Sentiment Analysis, simply add the following line to the require block of your composer.json file:

"antoineaugusti/laravel-sentiment-analysis": "~2.0"

You'll then need to run composer install or composer update to download it and have the autoloader updated.

This package supports auto discovery for Laravel 5.5+. If you don't have a version above 5.5 yet, you need to register the service provider. Open up config/app.php and add the following to the providers key.

Antoineaugusti\LaravelSentimentAnalysis\LaravelSentimentAnalysisServiceProvider::class,

You can register the SentimentAnalysis facade in the aliases key of your config/app.php file if you like.

'SentimentAnalysis' => Antoineaugusti\LaravelSentimentAnalysis\SentimentAnalysis::class,

Looking for a Laravel 4 compatible version?

Checkout the 1.2 version, installable by requiring "antoineaugusti/laravel-sentiment-analysis": "1.2".

Usage

Sentences can be classified as negative, neutral or positive. The only supported language for the moment is English.

Custom Dictionary

You can provide a custom dictionary by providing the path the folder when you create a new SentimentAnalysis object.

$analysis = new SentimentAnalysis(storage_path('custom_dictionary/'));

Please look at the PHPInsight data files to see how you should name and structure your files.

SentimentAnalysis::isNegative($sentence)

Returns a boolean telling if the given $sentence is classified as negative.

SentimentAnalysis::isNeutral($sentence)

Returns a boolean telling if the given $sentence is classified as neutral.

SentimentAnalysis::isPositive($sentence)

Returns a boolean telling if the given $sentence is classified as positive.

SentimentAnalysis::decision($sentence)

Get the sentiment of a sentence. Will return negative, neutral or positive

SentimentAnalysis::score($sentence)

Get the confidence of a decision for a result. The closer to 1, the better!

SentimentAnalysis::scores($sentence)

Get the score value for each decision. Returns an array. The closer to 1, the better! Return example:

['negative' => 0.5, 'neutral' => 0.25, 'positive' => 0.25]