Chansons les plus populaires
Il vous reste une dernière tâche sur ces données Spotify : trouver les 10 chansons les plus populaires toutes années confondues. L'algorithme à utiliser consiste à calculer les 10 meilleures chansons de chaque année, puis à les regrouper et à déterminer les 10 meilleures parmi ces « 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.
Cette activité fait partie du cours
Programmation parallèle avec Dask en Python
Instructions de l’exercice
- Pour chaque fichier, trouvez les 10 meilleures chansons de l'année correspondante à l'aide de la fonction
top_10_most_popular(). - Calculez la liste des « top 10 » pour chaque année et sélectionnez le premier élément du tuple résultant.
- Exécutez la fonction
top_10_most_popular()pour trouver les 10 meilleures chansons sur le DataFrame concaténé.
Exercice interactif pratique
Essayez cet exercice en complétant ce code d’exemple.
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)