가장 인기 있는 노래
Spotify 데이터에 대해 한 가지 작업이 더 남아 있어요. 사용 가능한 모든 연도에서 가장 인기 있는 상위 10곡을 찾는 것입니다. 이를 계산하는 알고리즘은 각 연도별로 상위 10곡을 구한 뒤, 이들을 합쳐 다시 상위 10곡(즉, 각 연도의 톱10 중 최종 톱10)을 찾는 방식이에요.
다음 함수는 DataFrame에서 상위 10곡을 찾는 함수로, 여러분의 작업 환경에 제공되어 있습니다.
def top_10_most_popular(df):
return df.nlargest(n=10, columns='popularity')
dask와 delayed() 함수는 이미 import되어 있어요. pandas는 pd로 import되어 있습니다. 파일 이름 목록은 filenames로, 각 파일의 연도는 years 리스트에 저장되어 있어요.
이 연습은 강의의 일부입니다
Python에서 Dask로 병렬 프로그래밍
연습 안내
- 각 파일에 대해
top_10_most_popular()함수를 사용해 해당 연도의 상위 10곡을 찾으세요. - 각 연도의 톱10 리스트를 계산하고, 반환된 튜플의 첫 번째 항목을 선택하세요.
- 연결(concatenate)한 DataFrame에 대해
top_10_most_popular()함수를 실행해 전체 기간의 상위 10곡을 찾으세요.
실습형 인터랙티브 연습
이 예제를 이 샘플 코드를 완성하여 풀어보세요.
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)