시작하기무료로 시작하기

행렬의 희소도

현실 세계의 평점 데이터에서는 대부분의 사용자가 대부분의 항목에 평점을 남기지 않고, 대부분의 항목도 일부 사용자에게만 평점이 매겨지는 경우가 많아요. 그 결과 DataFrame이 매우 비거나, 즉 희소(sparse)해져요.

이번 연습 문제에서는 movie_lens 평점 데이터에서 값이 채워진 셀의 수를 세고, 전체 DataFrame 크기와 비교하여 얼마나 희소한지 계산해 보려고 해요. 이전에 사용했던 사용자당 하나의 행과 영화당 하나의 열을 가진 DataFrame user_ratings_df가 이미 로드되어 있어요.

이 연습은 강의의 일부입니다

Python으로 추천 엔진 만들기

강의 보기

연습 안내

  • user_ratings_df에서 비어 있지 않은 셀의 개수를 세어 sparsity_count로 저장하세요.
  • user_ratings_df DataFrame의 전체 셀 개수를 세어 full_count로 저장하세요.
  • 비어 있지 않은 셀의 수를 전체 셀 수로 나눠 DataFrame의 희소도를 계산하고 결과를 출력하세요.

실습형 인터랙티브 연습

이 예제를 이 샘플 코드를 완성하여 풀어보세요.

# Count the occupied cells
sparsity_count = user_ratings_df.____().____.____()

# Count all cells
full_count = user_ratings_df.____

# Find the sparsity of the DataFrame
sparsity = ____ / ____
print(sparsity)
코드 편집 및 실행