A project which takes Spotify listening data and creates visualizations of the data.
I made this project to get some practice using the tools I learned in my Data Science Cetification.
The notebooks contained within this project contain more information on my thought process and exploratory analysis as well as some insights I generated into my personal data.
Through my month to month listening, I noticed that the amount of time I listened to Carly Rae Jepsen was far beyond any other artist that I listed to, so I wanted to see how well her features of music represented my listening habits.
The features of Carly's music that were particularly different from my other music is
- her songs are higher tempo
- her songs are higher valence (musical positivity)
- her songs are less acoustic
- her songs are louder
- her songs have higher energy
- her songs are more danceable
- her songs are more often in a major key
I also created a visual representation of the music in the form of Radar/Spider charts to illustrate the hunch that it is the combination of features that I like more than just the one feature individually. These plots are supposed to be displayed at the end of the analysis_with_api_data.ipynb, but Plotly doesn't play well with GitHub, so below is the only visual.
Here they are:
Upon examining these plots, what do we learn?
- I very much value features of loudness, energy, danceability, popularity, high valence, and high tempo
- Note: Popularity likely has no true bearing on my liking a song i.e. it is correlated with songs that I like, but probably not the cause. This is just an intuitive guess and not necessarily confirmed by the data
- I do not value speechiness virtually at all
- Carly Rae Jepsen is different from the rest of my other music in that they are less acoustic-y and shorter in length
- I won't give much weight to the high liveliness oberseved in the CRJ plot as this seems to only come from one song, so it's hardly a significant finding
This project contains a script which will run the artist per month analysis and generate the month by month visualizations.
Example of top artist from every month:
The libraries I used are listed in the requirements.txt file.
Running the script is as simple as running this command
python3 PATH_TO_SCRIPT PATH_TO_SPOTIFY_DATA