Install Order:
$ pip install pandas
$ pip install scikit-learn
$ pip install plotly
$ pip install spotipy
$ pip install swaglyrics
$ pip install nltk
$ pip install wordcloud
$ pip install requests
$ pip install kaleido
Although we have a subset of the corpus of songs to provide recommendations, the system will perform drastically better by replacing ./spotifydata.csv with the one at this url https://drive.google.com/file/d/1r0hiCGYKJSLZN302xvHCq5PD9VIxx-OV/view?usp=sharing
playlist.py [username] [Spotify playlist ID] [output filename]
- username is the user's Spotify user ID
- Spotify playlist ID is the Spotify ID
- Produces [output filename].csv
lyrics.py [input filename]
genres.py [input filename]
mood.py [input filename]
- the input file should be a .csv file generated from playlist.py
- Saves to existing [output filename].csv
python3 lyrics_tfidf.py playlist.csv
python3 stat_tests.py playlist.csv
python3 word_cloud.py playlist.csv
mkdir model_cache
sh_files/generateRecs.sh
- outputs recommendation with suffix -dt, -nn, -knn in recs/
mkdir img/tsne
sh_file/generateTSNE.sh
- outputs html and png of the t-SNE plot to img/tsne
mkdir img/scatterplotMatrix
python py_scripts/scatterplotMatrix.py playlist1.csv playlist2.csv "title string"
- outputs html and png of the pairplots to img/scatterplotMatrix