Zacznij terazZacznij za darmo

Kompensowanie niekompletnych danych

W większości zbiorów danych użytkownicy oceniają tylko niewielką część dostępnych pozycji. Jak widzieliśmy w poprzednim ćwiczeniu, sposób obsługi brakujących ocen może znacząco wpłynąć na trafność modelu.

W tym ćwiczeniu uzupełnisz brakujące dane w taki sposób, aby nie wprowadzały one błędu do już posiadanych wartości.

Obliczysz średnią ocenę wystawioną przez każdego użytkownika, a następnie wycentrujesz oceny każdego użytkownika wokół zera. Na koniec wypełnisz puste miejsca zerami, które pełnią teraz rolę neutralnego wyniku – minimalizuje to wpływ brakujących danych na profil użytkownika, a jednocześnie umożliwia porównywanie użytkowników między sobą.

Załadowano dla ciebie user_ratings_table z jednym wierszem na użytkownika.

To ćwiczenie jest częścią kursu

Budowanie systemów rekomendacji w Pythonie

Zobacz kurs

Instrukcje do ćwiczenia

  • Oblicz średnią ocen wystawionych przez każdego użytkownika w user_ratings_table i zapisz wynik jako avg_ratings.
  • Odejmij średnie wierszowe od każdego wiersza w user_ratings_table i zapisz wynik jako user_ratings_table_centered.
  • Wypełnij puste wartości w nowo utworzonej zmiennej user_ratings_table_centered zerami.

Interaktywne ćwiczenie praktyczne

Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.

# 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.____(____)
Edytuj i uruchom kod