Aan de slagGa gratis aan de slag

Compensatie voor onvolledige gegevens

Voor de meeste gegevenssets heeft het merendeel van de gebruikers maar een klein aantal items beoordeeld. Zoals je in de vorige oefening zag, kan de manier waarop je omgaat met gebruikers die geen beoordeling voor een item hebben, de geldigheid van je modellen sterk beïnvloeden.

In deze oefening vul je ontbrekende data aan met informatie die de data die je wél hebt niet zou moeten vertekenen.

Je haalt het gemiddelde cijfer dat elke gebruiker over al hun beoordelingen heeft gegeven en gebruikt dit gemiddelde vervolgens om de scores van gebruikers rond nul te centreren. Tot slot kun je de lege waarden invullen met nullen, wat nu een neutrale score is. Zo minimaliseer je de impact op hun totale profiel, maar kun je gebruikers nog steeds met elkaar vergelijken.

user_ratings_table met één rij per gebruiker is voor je geladen.

Deze oefening maakt deel uit van de cursus

Aanbevelingssystemen bouwen in Python

Cursus bekijken

Oefeninstructies

  • Zoek het gemiddelde van de beoordelingen die door elke gebruiker in user_ratings_table zijn gegeven en sla deze op als avg_ratings.
  • Trek de rijgemiddelden af van elke rij in user_ratings_table en sla dit op als user_ratings_table_centered.
  • Vul de lege waarden in het nieuw gemaakte user_ratings_table_centered aan met nullen.

Praktische interactieve oefening

Probeer deze oefening eens door deze voorbeeldcode in te vullen.

# 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.____(____)
Code bewerken en uitvoeren