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
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)