De aanbevelingstransformatie gebruiken
In de laatste paar oefeningen heb je de gemiddelde beoordeling per cursus berekend en enkele cursusgegevens opgeschoond. Je gebruikt deze gegevens nu om bruikbare aanbevelingen voor DataCamp-studenten te maken.
Ter herinnering, dit zijn de beslisregels voor het maken van aanbevelingen:
- Gebruik de technologie die een student het vaakst heeft beoordeeld.
- Sluit cursussen uit die een student al heeft beoordeeld.
- Zoek de drie best beoordeelde cursussen binnen de in aanmerking komende cursussen.
Om de uiteindelijke aanbevelingen te maken, gebruik je de gemiddelde cursusbeoordelingen en de lijst met in aanmerking komende aanbevelingen per gebruiker, opgeslagen in respectievelijk avg_course_ratings en courses_to_recommend. Dit doe je door de functie transform_recommendations() te voltooien, die beide DataFrames samenvoegt en per gebruiker de 3 hoogst beoordeelde cursussen vindt om aan te bevelen.
Deze oefening maakt deel uit van de cursus
Introductie tot Data Engineering
Oefeninstructies
- Maak de functie
transform_recommendations()af: - Voeg
course_to_recommendsamen metavg_course_ratings. - Sorteer de resultaten op
rating, gegroepeerd per user ID. - Toon de bovenste 3 rijen en sorteer op user ID.
- Roep de zojuist gedefinieerde functie
transform_recommendations()aan met de juiste argumenten om aanbevelingen per gebruiker op te slaan in de variabelerecommendations.
Praktische interactieve oefening
Probeer deze oefening eens door deze voorbeeldcode in te vullen.
# 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 = ____(____, ____)