始める無料で始める

ゼロを追加する

多くのレコメンドエンジンは暗黙的評価を使います。多くの場合、これらのデータセットには、ユーザーが一度も購入していないアイテムの行動回数が含まれていません。このような場合は、それらを補完してゼロを入れる必要があります。データフレーム Z が用意されています。Z には userIdproductId、そして特定の商品をユーザーが何回購入したかを表す num_purchases が含まれています。

この演習はコースの一部です

PySpark で作る Recommendation Engines

コースを見る

演習の手順

  • .show() メソッドを使ってデータフレーム Z を確認しましょう。
  • .distinct() メソッドを使って Z から重複のない userIdproductId を抽出します。結果はそれぞれ usersproducts と名付けましょう。
  • データフレーム usersproducts に対して .crossJoin() を実行します。結果は cj と名付けましょう。
  • 元の評価データフレーム Zcj["userId", "productId"]"left" 結合します。結果に対して .fillna(0) メソッドを呼び、欠損をゼロで埋めます。結果は Z_expanded と名付けましょう。

実践的なインタラクティブ演習

このサンプルコードを完成させて、この演習に挑戦してみましょう。

# 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()
コードを編集して実行