Chansons les plus populaires
Il vous reste une tâche sur ces données Spotify : trouver les 10 chansons les plus populaires sur l’ensemble des années disponibles. L’algorithme à utiliser consiste à calculer le top 10 des chansons pour chaque année, puis à combiner ces résultats et à extraire le top 10 des top 10.
La fonction suivante, qui trouve les 10 meilleures chansons dans un DataFrame, vous a été fournie et est disponible dans votre environnement.
def top_10_most_popular(df):
return df.nlargest(n=10, columns='popularity')
dask et la fonction delayed() ont été importés pour vous. pandas a été importé sous le nom pd. La liste des noms de fichiers est disponible dans votre environnement sous filenames, et l’année de chaque fichier est stockée dans la liste years.
Cet exercice fait partie du cours
Programmation parallèle avec Dask en Python
Instructions
- Pour chaque fichier, trouvez le top 10 des chansons de l’année correspondante en utilisant la fonction
top_10_most_popular(). - Calculez la liste des top 10 de chaque année et sélectionnez le premier élément du tuple résultant.
- Exécutez la fonction
top_10_most_popular()pour trouver le top 10 des chansons sur le DataFrame concaténé.
Exercice interactif pratique
Essayez cet exercice en complétant cet exemple de code.
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)