Baarn
+316 254 826 02
wessel.wegerif@gmail.com

Python Lyrical Comparison

Python Lyrical Comparison

Voor het vak Fundamentals of Data Science wilde ik iets doen met mijn passie voor muziek. Ik luister zelf heel veel muziek, met teveel stijlen om op te noemen. Bij het schrijven van deze blog luister ik naar modern blues rock om maar een voorbeeld te noemen.

Mijn hypothese was dat door de decennia heen, de kwaliteit van muziek was afgenomen. Er zit minder variatie in akkoorden en melodieën, en nummers klinken steeds meer zoals elkaar (Serrà et al., 2012).

Ik maakte uiteindelijk een Python-programma waarmee je van twee verschillende artiesten de drie populairste nummers met elkaar kon vergelijken, tenzij de gebruiker andere nummers kiest. Hiermee kon ik onderzoeken hoeveel, en wat voor unieke woorden artiesten gebruiken.


Ik kreeg dit voor elkaar door de Genius API te koppelen aan een dashboard in Streamlit. Genius is een grote online muziek encyclopedie, waar ik JSON bestanden vandaan kon halen. Deze bestanden waren groot, 200-400kb per nummer, maar na automatisch opschonen kwamen er werkbare bestanden van 5-10kb uit.


Dit alles resulteerde in een leuk programma, niet heel wetenschappelijk maar wel functioneel, waar je diverse vergelijkingen mee kon maken. Ik vergeleek Bob Dylan met Beyoncé, en waar Dylan 723 unieke woorden over 3 liedjes schreef, gebruikte Beyoncé 26% minder unieke woorden.



Ook kreeg je automatisch een woordweb, van de meest gebruikte woorden in de liedjes. Hieronder zie je die van de drie meest populaire nummers van Justin Timberlake.


Heb je zin in meer leesvoer?


(14 Maart 2025; momenteel heb ik mijn privé-laptop niet bij de hand, meer afbeeldingen volgen op een later tijdstip)

Serrà, J., Corral, Á., Boguñá, M., Haro, M., & Arcos, J. (2012, July 26). Measuring the Evolution of Contemporary Western Popular Music. Nature. doi.org/10.1038/srep00521