Uso de la transformación de recomendación
En los últimos ejercicios, has calculado la valoración media por curso y has depurado algunos datos del curso. Utilizarás estos datos para elaborar recomendaciones viables para los alumnos del DataCamp.
A modo de recordatorio, aquí tienes las reglas de decisión para elaborar recomendaciones:
- Utiliza la tecnología que un alumno haya valorado más.
- Excluir cursos que un alumno ya ha calificado.
- Encuentra los tres cursos mejor valorados de entre los elegibles.
Para producir las recomendaciones finales, utilizarás las valoraciones medias de los cursos, y la lista de recomendaciones elegibles por usuario, almacenadas en avg_course_ratings
y courses_to_recommend
respectivamente. Lo harás completando la función transform_recommendations()
que fusiona ambos DataFrames y encuentra los 3 cursos mejor valorados para recomendar por usuario.
Este ejercicio forma parte del curso
Introducción a la ingeniería de datos
Instrucciones de ejercicio
Completa la función
transform_recommendations()
:Fusiona
course_to_recommend
conavg_course_ratings
.Ordena los resultados por
rating
, agrupando por usuario ID.Mostrar las 3 primeras filas y ordenar por usuario ID.
Llama a la función
transform_recommendations()
que acabas de definir con los argumentos adecuados para almacenar las recomendaciones por usuario en la variablerecommendations
.
Ejercicio interactivo práctico
Pruebe este ejercicio completando este código de muestra.
# 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 = ____(____, ____)