IniziaInizia gratis

Brani più popolari

Hai un ultimo compito su questi dati di Spotify: trovare i 10 brani più popolari su tutti gli anni disponibili. L'algoritmo da usare consiste nel calcolare i 10 brani migliori di ogni anno, poi combinarli e infine trovare i 10 migliori tra questi top 10.

La seguente funzione, che trova i 10 brani migliori in un DataFrame, è stata fornita e disponibile nel tuo ambiente.

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

dask e la funzione delayed() sono già stati importati per te. pandas è stato importato come pd. L'elenco dei nomi dei file è disponibile nel tuo ambiente come filenames, e l'anno di ciascun file è memorizzato nella lista years.

Questo esercizio fa parte del corso

Programmazione parallela con Dask in Python

Visualizza il corso

Istruzioni dell'esercizio

  • Per ogni file, trova i 10 brani migliori di quell'anno usando la funzione top_10_most_popular().
  • Esegui il calcolo della lista dei top 10 di ogni anno e seleziona il primo elemento della tupla risultante.
  • Esegui la funzione top_10_most_popular() per trovare i 10 brani migliori sul DataFrame concatenato.

Esercizio pratico interattivo

Prova a risolvere questo esercizio completando il codice di esempio.

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)
Modifica ed esegui il codice