Aggiungi zeri
Molti motori di raccomandazione usano valutazioni implicite. Spesso questi insiemi di dati non includono i conteggi di comportamento per gli articoli che un utente non ha mai acquistato. In questi casi, devi aggiungerli e includere zeri. Il dataframe Z è già fornito. Contiene userId, productId e num_purchases, cioè il numero di volte in cui un utente ha acquistato un determinato prodotto.
Questo esercizio fa parte del corso
Costruire motori di raccomandazione con PySpark
Istruzioni dell'esercizio
- Dai un'occhiata al dataframe
Zusando il metodo.show(). - Estrai gli
userIde iproductIddistinti daZusando il metodo.distinct(). Chiama i risultati rispettivamenteuserseproducts. - Esegui un
.crossJoin()sui dataframeuserseproducts. Chiama il risultatocj. - Esegui una join
"left"tracje il dataframe originale delle valutazioniZsu["userId", "productId"]. Applica il metodo.fillna(0)al risultato per riempire i valori mancanti con zeri. Chiama il risultatoZ_expanded.
esercizio interattivo pratico
Prova questo esercizio completando questo codice di esempio.
# 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()