Sentiment_Analysis / README.md
Jivan01's picture
Update README.md
0385ad0 verified
|
Raw
History Blame Contribute Delete
3.41 kB

A newer version of the Streamlit SDK is available: 1.60.0

Upgrade
metadata
title: Sentiment Analysis Tool
emoji: 🧠
colorFrom: blue
colorTo: indigo
sdk: streamlit
sdk_version: 1.24.0
app_file: app.py
pinned: false

πŸ’¬ Sentiment Analysis Tool

A powerful web application for analyzing sentiment in text data using multiple NLP techniques.

image


πŸ“ Overview

This tool helps you analyze the sentiment (positive, negative, or neutral) of any text content such as tweets, product reviews, customer feedback, etc. It provides both single text analysis and batch processing capabilities with interactive visualizations.


πŸš€ Features

πŸ” Dual Analysis Methods

  • TextBlob: Simple and effective general-purpose sentiment analysis
  • VADER: Specialized for social media content and colloquial expressions

✏️ Single Text Analysis

image

  • Instant sentiment classification
  • Sentiment scores with detailed breakdown
  • Visual representation of results

πŸ“ Batch Processing

image

  • Upload CSV or Excel files with multiple text entries
  • Process hundreds of entries at once
  • Download results as a CSV file
  • Visualize sentiment distribution across all entries

πŸ§‘β€πŸ’» Interactive UI

  • User-friendly interface
  • Real-time analysis
  • Interactive charts and visualizations

βš™οΈ Installation

Clone this repository

git clone https://github.com/your-username/sentiment-analysis.git
cd Sentiment-Analysis

Install the required dependencies

pip install -r requirements.txt

▢️ Usage

Run the Streamlit app

streamlit run app.py

Then open your web browser and navigate to: http://localhost:8501

🧭 How to Use

πŸ”Ή For Single Text Analysis

  • Enter or paste your text
  • Select your preferred analysis method (TextBlob or VADER)
  • Click "Analyze Sentiment"

πŸ”Ή For Batch Analysis

  • Upload a CSV or Excel file with text data
  • Select the text column to analyze
  • Choose your analysis method
  • Click "Run Batch Analysis"

πŸ“Š Understanding the Results

πŸ“˜ TextBlob Analysis

  • Polarity: Score from -1.0 (very negative) to 1.0 (very positive)
  • Subjectivity: Score from 0.0 (objective) to 1.0 (subjective)

🐦 VADER Analysis

  • Compound Score: Normalized score between -1 (very negative) and 1 (very positive)
  • Positive / Neutral / Negative: Proportion of text falling into each category

πŸ“¦ Dependencies

  • streamlit >= 1.24.0
  • textblob >= 0.17.1
  • vaderSentiment >= 3.3.2
  • pandas >= 2.0.3
  • matplotlib == 3.7.2
  • plotly >= 5.15.0

πŸ’‘ Use Cases

  • Monitor brand sentiment on social media
  • Analyze customer reviews and feedback
  • Track public opinion on products or services
  • Research emotional content in texts
  • Evaluate communication effectiveness

⚠️ Limitations

  • Best performance with English text
  • May struggle with sarcasm and complex context
  • Limited understanding of industry-specific terminology
  • Cannot detect subtle emotional nuances

Created with ❀️ by Jivan Jamdar