Skip to content

Engineered features from song titles and audio data to analyze sentiment, cluster songs by emotion using K-Means, and visualize trends with Seaborn and WordCloud. Built and evaluated machine learning models (Linear Regression, KNN, Random Forest) based on textual and audio characteristics to predict song popularity.

Notifications You must be signed in to change notification settings

crbridget/spotify-insight

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

3 Commits
Β 
Β 
Β 
Β 

Repository files navigation

🎧 Spotify Insight: Sentiment, Clustering & Popularity Prediction

This project analyzes Spotify song data by engineering features from song titles and audio attributes to:

  • Perform sentiment analysis on song titles.
  • Cluster songs by emotional tone using K-Means.
  • Visualize trends with Seaborn and WordCloud.
  • Build and evaluate machine learning models (Linear Regression, KNN, Random Forest) to predict song popularity based on textual and audio characteristics.

πŸ“‚ Project Structure

The repository includes:

  • Spotify Song Analysis.ipynb: Jupyter Notebook containing the complete analysis, from data preprocessing to model evaluation.
  • README.md: This file, providing an overview and instructions.

πŸ“Š Features

  • Sentiment Analysis: Analyzes the sentiment of song titles using natural language processing techniques.
  • Clustering: Groups songs based on emotional tone using K-Means clustering.
  • Visualization: Generates insightful visualizations with Seaborn and WordCloud to explore trends.
  • Popularity Prediction: Builds and evaluates machine learning models to predict song popularity based on engineered features. Go Packages

πŸš€ Getting Started

Prerequisites Ensure you have the following installed:

  • Python 3.6 or higher
  • Jupyter Notebook
  • Required Python libraries:
    • pandas
    • numpy
    • matplotlib
    • seaborn
    • wordcloud
    • scikit-learn
    • nltk

Installation

  1. Clone the repository:
git clone https://github.com/crbridget/spotify-insight.git
cd spotify-insight
  1. Install the required libraries:
pip install -r requirements.txt

Note: If requirements.txt is not provided, install the libraries individually using pip install library_name.

  1. Launch Jupyter Notebook:
jupyter notebook
  1. Open Spotify Song Analysis.ipynb and run the cells sequentially to execute the analysis.

πŸ“ˆ Results

The analysis provides:

  • Sentiment scores for song titles.
  • Clusters of songs grouped by emotional tone.
  • Visualizations highlighting trends in the data.
  • Performance metrics of machine learning models predicting song popularity.

🀝 Contributing

Contributions are welcome! Please fork the repository and submit a pull request for any enhancements or bug fixes.

πŸ“„ License

This project is open-source and available under the MIT License.

About

Engineered features from song titles and audio data to analyze sentiment, cluster songs by emotion using K-Means, and visualize trends with Seaborn and WordCloud. Built and evaluated machine learning models (Linear Regression, KNN, Random Forest) based on textual and audio characteristics to predict song popularity.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors