ÎncepețiÎncepe gratuit

Adaugă zerouri

Multe motoare de recomandare folosesc evaluări implicite. În multe cazuri, aceste seturi de date nu includ contoare de comportament pentru produsele pe care un utilizator nu le-a cumpărat niciodată. În astfel de situații, va trebui să le adaugi și să incluzi zerouri. DataFrame-ul Z îți este pus la dispoziție. Acesta conține coloanele userId, productId și num_purchases, care reprezintă numărul de ori în care un utilizator a achiziționat un anumit produs.

Acest exercițiu face parte din cursul

Construiește motoare de recomandare cu PySpark

Vezi cursul

Instrucțiuni pentru exercițiu

  • Aruncă o privire asupra DataFrame-ului Z folosind metoda .show().
  • Extrage valorile distincte ale userId-urilor și productId-urilor din Z folosind metoda .distinct(). Numește rezultatele users, respectiv products.
  • Aplică .crossJoin() pe DataFrame-urile users și products. Numește rezultatul cj.
  • Realizează un join de tip "left" între cj și DataFrame-ul original de evaluări Z, pe coloanele ["userId", "productId"]. Aplică metoda .fillna(0) pe rezultat pentru a completa valorile lipsă cu zerouri. Numește rezultatul Z_expanded.

Exercițiu interactiv practic

Încearcă acest exercițiu completând acest cod de exemplu.

# 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()
Editează și rulează codul