{"id":29026062,"url":"https://github.com/mtg/playlists-stat-analysis","last_synced_at":"2025-09-10T12:33:14.814Z","repository":{"id":40983118,"uuid":"192386105","full_name":"MTG/playlists-stat-analysis","owner":"MTG","description":"Tools for Analyzing Popularity and Semantic Diversity of a Playlist Dataset","archived":false,"fork":false,"pushed_at":"2024-06-17T22:50:29.000Z","size":76,"stargazers_count":10,"open_issues_count":2,"forks_count":1,"subscribers_count":1,"default_branch":"mtg_branch","last_synced_at":"2025-07-09T19:18:02.270Z","etag":null,"topics":["diversity-analysis","music-information-retrieval","playlist","popularity-analysis","statistical-analysis","trompa"],"latest_commit_sha":null,"homepage":"https://github.com/LPorcaro/playlist","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/MTG.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2019-06-17T16:57:16.000Z","updated_at":"2025-05-31T00:18:01.000Z","dependencies_parsed_at":"2022-09-18T14:13:46.268Z","dependency_job_id":null,"html_url":"https://github.com/MTG/playlists-stat-analysis","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/MTG/playlists-stat-analysis","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MTG%2Fplaylists-stat-analysis","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MTG%2Fplaylists-stat-analysis/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MTG%2Fplaylists-stat-analysis/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MTG%2Fplaylists-stat-analysis/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/MTG","download_url":"https://codeload.github.com/MTG/playlists-stat-analysis/tar.gz/refs/heads/mtg_branch","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MTG%2Fplaylists-stat-analysis/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":274462746,"owners_count":25290112,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-09-10T02:00:12.551Z","response_time":83,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["diversity-analysis","music-information-retrieval","playlist","popularity-analysis","statistical-analysis","trompa"],"created_at":"2025-06-26T05:08:17.285Z","updated_at":"2025-09-10T12:33:14.749Z","avatar_url":"https://github.com/MTG.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# 20 Years of Playlists: a Statistical Analysis on Popularity and Diversity\n\nThe proposed methodology can be applied to characterize playlists in terms of popularity and semantic diversity, allowing the comparative analysis of human-generated and algorithm-generated playlists in different contexts such as historical periods, platforms and musical genres. We find extremely valuable to compare different playlist datasets, as it allows to understand how changes in the listening experience are affecting playlist creation strategies.\n\nThis repository contains code to reproduce the results of our [paper](http://mtg.upf.edu/node/3959).\n\n#### Reference:\n\u003e Lorenzo Porcaro, Emilia Gómez (2019). 20 Years of Playlists: A Statistical Analysis on Popularity and Diversity. Paper to be presented at the 20th Conference of the International Society for Music Information Retrieval (ISMIR 2019), Delft, The Netherlands, 4-8 November.\n\n#### Contact:\n\u003elorenzo.porcaro at gmail.com\n\n#### Clone repos:\n```\ngit clone https://github.com/MTG/playlists-stat-analysis.git\ncd playlists-stat-analysis/src/\ngit clone https://github.com/oliviaguest/gini\n```\n\n#### Installation:\nCreate a virtual environment (tested on Python 3.5), then launch the following command for installing the dependencies (be sure to be in the `src` folder):\n ```\npip install -r requirements.txt\n ```\n \n #### Download dataset:\n It lasts between 5 and 10 minutes, and it is needed around 2GB of free disk\n ```\n mkdir ../data\n  ./download_datasets.sh\n```\n\n #### Add new dataset (optional):\n Check [data/README.md](https://github.com/LPorcaro/playlist/blob/master/data/README.md)\n\n #### Tags data:\nFor Last.fm tags and tags embeddings write to \n\u003e lorenzo.porcaro at gmail.com\n\n #### Analyze Dataset:\n For instance, to analyze AOTM dataset launch the following commands: \n \n##### Playlist Popularity Analysis:\n```\npython playlist_popularity.py -d AOTM\n```\n##### Playlist Diversity Analysis:\n```\npython playlist_diversity.py -d AOTM\n```\n##### Playlist Qualitative Analysis:\n```\npython playlist_qualia.py -d AOTM \n```\n##### Plot tag-embeddings using [t-SNE](https://lvdmaaten.github.io/tsne/) algorithm:\n```\npython plot_embeddings_tsne.py -d AOTM\n```\nIn the case of CORN dataset, `playlist_diversity.py` lasts ~20 min, due to longness of average playlist.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmtg%2Fplaylists-stat-analysis","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmtg%2Fplaylists-stat-analysis","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmtg%2Fplaylists-stat-analysis/lists"}