Začněte nyníZačněte zdarma

Normalizace dat

Než budeš moct rozložit matici hodnocení pomocí singulárního rozkladu (SVD), je potřeba ji „de-meanovat", tedy centrovat – od každé hodnoty v řádku odečteš průměr daného řádku.

V tomto cvičení začneš připravovat DataFrame s hodnoceními filmů, se kterým jsi pracoval/a v předchozích úlohách, aby byl připravený pro singulární rozklad.

user_ratings_df obsahuje jeden řádek na uživatele a jeden sloupec pro každý film a je už načtený.

Toto cvičení je součástí kurzu

Tvorba doporučovacích systémů v Pythonu

Zobrazit kurz

Pokyny k cvičení

  • Zjisti průměrné hodnocení, které každý uživatel udělil napříč všemi filmy, které viděl, a ulož tyto hodnoty jako avg_ratings.
  • Od příslušných řádků odečti jejich průměry a výsledek ulož jako user_ratings_centered.
  • Nakonec doplň všechny chybějící hodnoty v user_ratings_centered nulami.
  • Vypiš průměr každého sloupce v user_ratings_centered, aby bylo vidět, že data byla de-meanována.

Interaktivní cvičení na vyzkoušení si v praxi

Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.

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

# Center each user's ratings around 0
user_ratings_centered = user_ratings_df.____(____, axis=1)

# Fill in all missing values with 0s
user_ratings_centered.____(0, inplace=True)

# Print the mean of each column
print(user_ratings_centered.____(axis=1))
Upravit a spustit kód