ComenzarEmpieza gratis

Compensar datos incompletos

En la mayoría de los conjuntos de datos, la mayoría de usuarios habrá valorado solo un número reducido de ítems. Como viste en el ejercicio anterior, cómo trates a los usuarios que no tienen valoraciones para un ítem puede influir mucho en la validez de tus modelos.

En este ejercicio, vas a rellenar los datos faltantes con información que no sesgue los datos que ya tienes.

Obtendrás la puntuación media que cada usuario ha dado en todas sus valoraciones y, después, usarás esa media para centrar las puntuaciones de los usuarios alrededor de cero. Por último, podrás rellenar los valores vacíos con ceros, que ahora es una puntuación neutral, minimizando el impacto en su perfil global, pero permitiendo igualmente la comparación entre usuarios.

user_ratings_table, con una fila por usuario, ya se ha cargado por ti.

Este ejercicio forma parte del curso

Creación de motores de recomendación en Python

Ver curso

Instrucciones del ejercicio

  • Calcula la media de las valoraciones dadas por cada usuario en user_ratings_table y guárdala como avg_ratings.
  • Resta las medias de cada fila a su correspondiente fila en user_ratings_table y guarda el resultado como user_ratings_table_centered.
  • Rellena los valores vacíos del nuevo user_ratings_table_centered con ceros.

Ejercicio interactivo práctico

Prueba este ejercicio y completa el código de muestra.

# Get the average rating for each user 
avg_ratings = user_ratings_table.____(axis=____)

# Center each users ratings around 0
user_ratings_table_centered = user_ratings_table.____(____, axis=0)

# Fill in the missing data with 0s
user_ratings_table_normed = user_ratings_table_centered.____(____)
Editar y ejecutar código