BaşlayınÜcretsiz başlayın

Doğru biçim ve tekil kullanıcılar

R veri çerçevesine bir göz at. Her sütunda farklı bir film olan, geleneksel ya da "geniş" biçimde olduğunu fark edeceksin. Ayrıca User ve film adlarının tamsayı formatında olmadığını da fark et. Bu veriyi ALS için doğru şekilde hazırlamak üzere adımları izle.

Bu egzersiz, kursun bir parçasıdır

PySpark ile Öneri Motorları Oluşturma

Kursa Göz Atın

Egzersiz talimatları

  • pyspark.sql.functions içinden monotonically_increasing_id paketini içe aktar ve .show() metodunu kullanarak R veri çerçevesini görüntüle.
  • R veri çerçevesini "uzun" bir veri çerçevesine dönüştürmek için to_long() fonksiyonunu kullan. Yeni veri çerçevesine ratings adını ver.
  • Veri çerçevesinden tüm .distinct() kullanıcıları içeren ve .coalesce(1) metodunu kullanarak tek bir bölüme yeniden bölümlediğin users adlı bir veri çerçevesi oluştur.
  • withColumn() içinde monotonically_increasing_id() metodunu kullanarak kullanıcılar veri çerçevesinde her kullanıcı için benzersiz bir tamsayı içeren yeni bir sütun oluştur. Bu sütuna userId adını ver. Yeni tamsayı kimliklerin kalıcı olması için son veri çerçevesinde .persist() metodunu çağırdığından emin ol.

Uygulamalı etkileşimli egzersiz

Bu egzersizi bu örnek kodu tamamlayarak deneyin.

# Import monotonically_increasing_id and show R
from pyspark.sql.functions import ____
R.show()

# Use the to_long() function to convert the dataframe to the "long" format.
ratings = to_long(____)
ratings.show()

# Get unique users and repartition to 1 partition
users = ratings.select("____").____().____()

# Create a new column of unique integers called "userId" in the users dataframe.
users = users.withColumn("____", monotonically_increasing_id()).____()
users.show()
Kodu Düzenle ve Çalıştır