Cele mai populare melodii
Mai ai o sarcină de rezolvat cu datele Spotify: găsirea celor mai populare 10 melodii din toți anii disponibili. Algoritmul pe care trebuie să îl folosești constă în calcularea celor mai populare 10 melodii din fiecare an, combinarea acestora și identificarea celor mai bune 10 din toate topurile.
Următoarea funcție, care găsește primele 10 melodii dintr-un DataFrame, a fost deja definită și este disponibilă în mediul tău de lucru.
def top_10_most_popular(df):
return df.nlargest(n=10, columns='popularity')
dask și funcția delayed() au fost importate pentru tine. pandas a fost importat ca pd. Lista numelor de fișiere este disponibilă în mediul tău ca filenames, iar anul fiecărui fișier este stocat în lista years.
Acest exercițiu face parte din cursul
Programare paralelă cu Dask în Python
Instrucțiuni pentru exercițiu
- Pentru fiecare fișier, găsește primele 10 melodii din acel an folosind funcția
top_10_most_popular(). - Calculează lista cu topurile din fiecare an și selectează primul element al tuplului rezultat.
- Rulează funcția
top_10_most_popular()pentru a găsi primele 10 melodii din DataFrame-ul concatenat.
Exercițiu interactiv practic
Încearcă acest exercițiu completând acest cod de exemplu.
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)