Skip to content

This application scrapes data from the Spotify API using the lightweight python library Spotipy. The data is transformed and processed for analysis through R Studio and mapReduce patterns implemented in Python.

Notifications You must be signed in to change notification settings

SamQuigley/SpotifyDataAnalysis

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

41 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

SpotifyDataAnalysis

This project is part of my Data Application Development module @ the National College of Ireland, delivered by Dr. Caton.

This application can be used by anyone, by registering your own Spotify application.
ADD TO SCRIPTS - your client_id, secret_id, playlist_ids, and user_id  

Project Flow (KDD)

#NodeSpotifyAPI
This is a simple credentials flow application used to obtain a users ID, 
which can be used as a paramter in API calls. 
Adopted from here -> https://developer.spotify.com/web-api/tutorial/

# Data Extraction & pre-processing
Scraper.py    -   pulls data from Spotifys API
jsonToCSV.py  -   converts API response from JSON to CSV
ms_to_mins.py -   adds the song duration to the dataset in mins/secs format

# Data Trnasformation, analysis, and vizualisation
Spotify.R     -   Imports the csv files, performs operations on the datasets, 
exports datasets to tab delimeted text files for mapReduce.

# mapReduce
count & top N -> song tempos
max -> song tempos
max -> song duration

# Knowledge
This project helped me undertand the core attributes to popular songs, 
as well understand the attributes that are in my favourite songs and how the two datasets differ.

Datasets I Used

1. My personal top 100 tracks from 2017 on Spotify
2. The top 100 tracks streamed on Spotify in 2017.

Prerequisites

Python 3
Node.js
Spotipy(pip install)

Built With

  • Spotipy - Lightweight Python library for the Spotify Web API.

Authors

License

This project is licensed under the MIT License

Acknowledgments

About

This application scrapes data from the Spotify API using the lightweight python library Spotipy. The data is transformed and processed for analysis through R Studio and mapReduce patterns implemented in Python.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published