Original size 1140x1600

Анализ плейлистов Spotify

PROTECT STATUS: not protected
7

Вступление

Данные для проекта «Анализ плейлистов Spotify» был взят из файла csv, который содержал данные 6000 плейлистов. Сам файл был взят с сайта https://www.kaggle.com/datasets/viktoriiashkurenko/278k-spotify-songs/data?select=main_dataset.csv

Я выбрал эту базу данных, поскольку мне интересна музыка и этот анализ позволил мне выявить основные тренды и тенденции в популярной музыке.

В этом анализе были использованы следующие графики:

1. Гистограмма

Используется для анализа темпа треков

2. Диаграмма рассеяния

Показывает зависимость между популярностью и продолжительностью

3. Столбчатая диаграмма

Показывается средняя популярность по типу релиза (альбом, сингл, компиляция)

4. Диаграмма зависимости

Зависимость между популярностью и танцевальностью

Этапы работы

Первым делом был скачан датасет и проанализированы первые строчки.

import pandas as pd

file_path = 'main_dataset.csv' data = pd.read_csv (file_path)

data.head ()

Коды для графиков

Графикам был придан стиль и цветовая гамма Spotify

Гистограмма темпа треков

import matplotlib.pyplot as plt

plt.figure (figsize=(10, 6)) plt.hist (data['tempo'], bins=30, color='#1DB954') plt.title ('Distribution of Track Tempo', fontsize=16, color='white') plt.xlabel ('Tempo (BPM)', fontsize=14, color='white') plt.ylabel ('Count', fontsize=14, color='white') plt.tick_params (colors='white') plt.gca ().set_facecolor ('black') plt.gcf ().set_facecolor ('black') plt.show ()

Диаграмма рассеяния популярность и продолжительность

plt.figure (figsize=(10, 6)) plt.scatter (data['duration_ms'], data['popularity'], color='#1DB954') plt.title ('Popularity vs. Duration', fontsize=16, color='white') plt.xlabel ('Duration (ms)', fontsize=14, color='white') plt.ylabel ('Popularity', fontsize=14, color='white') plt.tick_params (colors='white') plt.gca ().set_facecolor ('black') plt.gcf ().set_facecolor ('black') plt.show ()

Столбчатая диаграмма популярности по типу релиза

avg_popularity = data.groupby ('album_type')['popularity'].mean ().reset_index ()

plt.figure (figsize=(10, 6)) plt.bar (avg_popularity['album_type'], avg_popularity['popularity'], color=['#1DB954', '#191414', '#FFFFFF']) plt.title ('Average Popularity by Album Type', fontsize=16, color='white') plt.xlabel ('Album Type', fontsize=14, color='white') plt.ylabel ('Average Popularity', fontsize=14, color='white') plt.tick_params (colors='white') plt.gca ().set_facecolor ('black') plt.gcf ().set_facecolor ('black') plt.show ()

Диаграмма зависимости популярность и танцевальность

import matplotlib.pyplot as plt import pandas as pd

data = pd.read_csv ('main_dataset.csv')

plt.figure (figsize=(10, 6)) plt.scatter (data['danceability'], data['popularity'], color='#1DB954') plt.title ('Popularity vs. Danceability', fontsize=16, color='white') plt.xlabel ('Danceability', fontsize=14, color='white') plt.ylabel ('Popularity', fontsize=14, color='white') plt.tick_params (colors='white') plt.gca ().set_facecolor ('black') plt.gcf ().set_facecolor ('black') plt.show ()

Графики

Original size 873x554
Original size 855x554
Original size 846x554
Original size 855x554

Выводы на основе анализа

Гистограмма темпа треков

Большинство треков имеет темп в диапазоне от 90 до 130 BPM. Это типичный диапазон для большинства популярных жанров музыки, таких как поп и танцевальная музыка.

Диаграмма рассеяния популярность и продолжительность

Наблюдается слабая зависимость между продолжительностью трека и его популярностью. Однако можно заметить, что треки средней продолжительности (около 200000 — 250000 мс, или 3-4 минут) имеют тенденцию быть более популярными.

Средняя популярность по типу релиза

Альбомы типа «single» и «album» имеют разные уровни популярности, причем «album» в среднем более популярны. Это может быть связано с тем, что альбомы предлагают слушателям более целостный опыт и часто лучше продвигаются.

Зависимость популярность и танцевальность

Танцевальные треки (danceability) имеют тенденцию быть более популярными. Это важный фактор для жанров, которые часто играют на танцевальных площадках.

Описание применения генеративной модели

Для создания обложки использовался ChatGPT 4o https://openai.com/

Для создания графиков также использовался ChatGPT 4o https://openai.com/

Ссылка на датасет https://disk.yandex.ru/d/mLK9lXefzHuhHA

Анализ плейлистов Spotify
7