ComeçarComece de graça

Músicas mais populares

Você tem mais uma tarefa com esses dados do Spotify: encontrar as 10 músicas mais populares em todos os anos disponíveis. O algoritmo necessário é calcular as top 10 músicas em cada ano, depois combinar esses resultados e encontrar as top 10 das top 10.

A função abaixo, que encontra as top 10 músicas em um DataFrame, foi fornecida e está disponível no seu ambiente.

def top_10_most_popular(df):
  return df.nlargest(n=10, columns='popularity')

dask e a função delayed() já foram importados para você. pandas foi importado como pd. A lista de nomes de arquivos está disponível no seu ambiente como filenames, e o ano de cada arquivo está armazenado na lista years.

Este exercício faz parte do curso

Programação Paralela com Dask em Python

Ver curso

Instruções do exercício

  • Para cada arquivo, encontre as top 10 músicas daquele ano usando a função top_10_most_popular().
  • Compute a lista das top 10 de cada ano e selecione o primeiro item da tupla resultante.
  • Execute a função top_10_most_popular() para encontrar as top 10 músicas no DataFrame concatenado.

Exercício interativo prático

Experimente este exercício completando este código de exemplo.

top_songs = []

for file in filenames:
    df = delayed(pd.read_csv)(file)
    # Find the top 10 most popular songs in this file
    df_top_10 = ____
    top_songs.append(df_top_10)

# Compute the list of top 10s
top_songs_list = ____

# Concatenate them and find the best of the best
top_songs_df = pd.concat(top_songs_list)
df_all_time_top_10 = ____
print(df_all_time_top_10)
Editar e executar o código