Najpopularniejsze piosenki
Masz jeszcze jedno zadanie do wykonania na danych Spotify – znalezienie 10 najpopularniejszych piosenek ze wszystkich dostępnych lat. Algorytm, którego użyjesz, polega na wyznaczeniu top 10 piosenek dla każdego roku, a następnie połączeniu tych wyników i wyłonieniu top 10 spośród wszystkich top 10.
Poniższa funkcja, która znajduje 10 najpopularniejszych piosenek w DataFrame, została już przygotowana i jest dostępna w twoim środowisku.
def top_10_most_popular(df):
return df.nlargest(n=10, columns='popularity')
dask oraz funkcja delayed() zostały już zaimportowane. pandas jest dostępny jako pd. Lista nazw plików jest dostępna w twoim środowisku jako filenames, a rok odpowiadający każdemu plikowi jest przechowywany na liście years.
To ćwiczenie jest częścią kursu
Programowanie równoległe z Dask w Pythonie
Instrukcje do ćwiczenia
- Dla każdego pliku znajdź 10 najpopularniejszych piosenek z danego roku, korzystając z funkcji
top_10_most_popular(). - Oblicz listę top 10 z każdego roku i wybierz pierwszy element zwróconej krotki.
- Uruchom funkcję
top_10_most_popular(), aby znaleźć 10 najpopularniejszych piosenek w połączonym DataFrame.
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
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)