Nullen toevoegen
Veel aanbevelingssystemen gebruiken impliciete beoordelingen. In veel gevallen bevatten deze gegevenssets geen gedragsaantallen voor items die een gebruiker nooit heeft gekocht. In zulke gevallen moet je ze toevoegen en nullen opnemen. De dataframe Z is voor je beschikbaar. Deze bevat userId’s, productId’s en num_purchases, het aantal keren dat een gebruiker een specifiek product heeft gekocht.
Deze oefening maakt deel uit van de cursus
Aanbevelingssystemen bouwen met PySpark
Oefeninstructies
- Bekijk de dataframe
Zmet de methode.show(). - Haal de unieke
userId’s enproductId’s uitZmet de methode.distinct(). Noem de resultaten respectievelijkusersenproducts. - Voer een
.crossJoin()uit op de dataframesusersenproducts. Noem het resultaatcj. - Voer een
"left"-join uit vancjop de oorspronkelijke ratings-dataframeZop["userId", "productId"]. Roep vervolgens de methode.fillna(0)aan op het resultaat om de lege waarden met nullen op te vullen. Noem het resultaatZ_expanded.
Interactieve oefening met praktijkervaring
Probeer deze oefening door deze voorbeeldcode aan te vullen.
# View the data
Z.____()
# Extract distinct userIds and productIds
users = ____.select("____").____()
products = Z.____("productId").____()
# Cross join users and products
____ = users.____(products)
# Join cj and Z
____ = cj.join(Z, ["____", "____"], "left").____(0)
# View Z_expanded
____.show()