Zacznij terazZacznij za darmo

Dodawanie zer

Wiele silników rekomendacji korzysta z ocen niejawnych. W takich zbiorach danych często brakuje liczby interakcji dla produktów, których użytkownik nigdy nie kupił. W takich przypadkach trzeba je dodać i uzupełnić zerami. Do dyspozycji masz ramkę danych Z, która zawiera kolumny userId, productId oraz num_purchases – czyli liczbę zakupów danego produktu przez użytkownika.

To ćwiczenie jest częścią kursu

Budowanie silników rekomendacji w PySpark

Zobacz kurs

Instrukcje do ćwiczenia

  • Wyświetl ramkę danych Z za pomocą metody .show().
  • Wyodrębnij unikalne wartości userId i productId z Z za pomocą metody .distinct(). Wyniki zapisz odpowiednio jako users i products.
  • Wykonaj .crossJoin() na ramkach danych users i products. Wynik zapisz jako cj.
  • Złącz cj z oryginalną ramką danych z ocenami Z za pomocą złączenia "left" po kolumnach ["userId", "productId"]. Na wyniku wywołaj metodę .fillna(0), aby uzupełnić brakujące wartości zerami. Wynik zapisz jako Z_expanded.

Interaktywne ćwiczenie praktyczne

Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.

# 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()
Edytuj i uruchom kod