추천 변환 함수 사용하기
직전 몇 개의 연습 문제에서 코스별 평균 평점을 계산하고 일부 코스 데이터를 정리했어요. 이제 이 데이터를 활용해 DataCamp 학습자에게 적합한 추천을 만들어 볼 거예요.
다시 한 번, 추천을 생성하는 의사결정 규칙은 다음과 같아요:
- 학습자가 가장 많이 평점을 남긴 기술 스택을 활용해요.
- 이미 평점을 남긴 코스는 제외해요.
- 자격 요건을 충족하는 코스 중 상위 평점 3개를 찾아요.
최종 추천을 만들기 위해 avg_course_ratings(코스 평균 평점)와 courses_to_recommend(사용자별 추천 가능 코스 목록)에 저장된 데이터를 사용할 거예요. 두 DataFrame을 병합하고 사용자별로 추천할 최고 평점 상위 3개 코스를 찾도록 transform_recommendations() 함수를 완성하세요.
이 연습은 강의의 일부입니다
데이터 엔지니어링 입문
연습 안내
transform_recommendations()함수를 완성하세요:course_to_recommend를avg_course_ratings와 병합해요.- 사용자 ID로 그룹화한 뒤
rating기준으로 정렬해요. - 상위 3개 행을 추려(
head(3)) 사용자 ID 기준으로 정렬해 보여줘요. - 방금 정의한
transform_recommendations()함수를 적절한 인수로 호출해, 사용자별 추천 결과를recommendations변수에 저장하세요.
실습형 인터랙티브 연습
이 예제를 이 샘플 코드를 완성하여 풀어보세요.
# Complete the transformation function
def transform_recommendations(avg_course_ratings, courses_to_recommend):
# Merge both DataFrames
merged = courses_to_recommend.____(____)
# Sort values by rating and group by user_id
grouped = merged.sort_values("____", ascending=False).groupby("____")
# Produce the top 3 values and sort by user_id
recommendations = grouped.head(____).sort_values("____").reset_index()
final_recommendations = recommendations[["user_id", "course_id","rating"]]
# Return final recommendations
return final_recommendations
# Use the function with the predefined DataFrame objects
recommendations = ____(____, ____)