Bắt đầu ngayBắt đầu miễn phí

Gán nhãn dữ liệu

Một dataframe df có sẵn với các cột endword: string, features: vector, và outvec: vector. Bạn cần chọn các hàng có endword bằng "him", và thêm một cột label với giá trị số nguyên 1. Sau đó, dùng phép union để thêm một số lượng hàng tương đương có endword khác "him", sao cho các hàng bổ sung này có label = 0.

Nhắc lại: trong SQL, phép so sánh khác được thực hiện bằng <>.

Bài tập này là một phần của khóa học

Nhập môn Spark SQL bằng Python

Xem khóa học

Hướng dẫn bài tập

  • Import hàm lit.
  • Chọn các hàng có endword là 'him' và thêm một cột số nguyên label với giá trị 1.
  • Chọn các hàng có endword không phải 'him' và thêm một cột số nguyên label với giá trị 0.
  • Union hai tập này, dùng số lượng ví dụ âm bằng với số lượng ví dụ dương.

Bài tập tương tác thực hành trực tiếp

Hãy thử làm bài tập này bằng cách hoàn thành đoạn mã mẫu này.

# Import the lit function
from pyspark.____ import lit

# Select the rows where endword is 'him' and label 1
df_pos = df.where("____ = 'him'")\
           .withColumn('label', lit(____))

# Select the rows where endword is not 'him' and label 0
df_neg = df.where("endword <> '____'")\
           .withColumn('label', ____(0))

# Union pos and neg in equal number
df_examples = df_pos.____(df_neg.limit(df_pos.count()))
print("Number of examples: ", df_examples.count())
df_examples.where("endword <> 'him'").sample(False, .1, 42).show(5)
Chỉnh sửa và Chạy Mã