Inizia subitoInizia gratis

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

Visualizza corso

Istruzioni dell'esercizio

  • Dai un'occhiata al dataframe Z usando il metodo .show().
  • Estrai gli userId e i productId distinti da Z usando il metodo .distinct(). Chiama i risultati rispettivamente users e products.
  • Esegui un .crossJoin() sui dataframe users e products. Chiama il risultato cj.
  • Esegui una join "left" tra cj e il dataframe originale delle valutazioni Z su ["userId", "productId"]. Applica il metodo .fillna(0) al risultato per riempire i valori mancanti con zeri. Chiama il risultato Z_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()
Modifica ed esegui il codice