Skip to content
Spotify Music Data
  • AI Chat
  • Code
  • Report
  • Spotify Music Data

    This dataset consists of ~600 songs that were in the top songs of the year from 2010 to 2019 (as measured by Billboard). You can explore interesting song data pulled from Spotify such as the beats per minute, amount of spoken words, loudness, and energy of every song.

    Not sure where to begin? Scroll to the bottom to find challenges!

    import pandas as pd
    import matplotlib.pyplot as plt
    import seaborn as sns
    import numpy as np
    top_music = pd.read_csv("spotify_top_music.csv", index_col=0)

    Data dictionary

    VariableExplanation
    0titleThe title of the song
    1artistThe artist of the song
    2top genreThe genre of the song
    3yearThe year the song was in the Billboard
    4bpmBeats per minute: the tempo of the song
    5nrgyThe energy of the song: higher values mean more energetic (fast, loud)
    6dnceThe danceability of the song: higher values mean it's easier to dance to
    7dBDecibel: the loudness of the song
    8liveLiveness: likeliness the song was recorded with a live audience
    9valValence: higher values mean a more positive sound (happy, cheerful)
    10durThe duration of the song
    11acousThe acousticness of the song: likeliness the song is acoustic
    12spchSpeechines: higher values mean more spoken words
    13popPopularity: higher values mean more popular

    Source of dataset.

    ##Check for null values in dataset
    top_music.isnull().sum()

    There are no null value in the dataset

    top_music.info()
    top_music.describe().T
    top_artist = top_music['artist'].value_counts().head()
    top_genre = top_music['top genre'].value_counts().head()
    top_music.sort_values(by = 'pop').agg({'dur': 'mean'})

    Don't know where to start?

    Challenges are brief tasks designed to help you practice specific skills:

    • 🗺️ Explore: Which artists and genres are the most popular?
    • 📊 Visualize: Visualize the numeric values as a time-series by year. Can you spot any changes over the years?
    • 🔎 Analyze: Train and build a classifier to predict a song's genre based on columns 3 to 13.

    Scenarios are broader questions to help you develop an end-to-end project for your portfolio:

    Your friend, who is an aspiring musician, wants to make a hit song and has asked you to use your data skills to help her. You have decided to analyze what makes a top song, keeping in mind changes over the years. What concrete recommendations can you give her before she writes lyrics, makes beats, and records the song? She's open to any genre!

    You will need to prepare a report that is accessible to a broad audience. It will need to outline your motivation, analysis steps, findings, and conclusions.