MulaiMulai sekarang secara gratis

Memberi label pada data

Sebuah dataframe df tersedia dengan kolom endword: string, features: vector, dan outvec: vector. Anda diminta memilih baris yang nilai endword-nya sama dengan "him", lalu menambahkan kolom label dengan nilai bilangan bulat 1. Selanjutnya, gunakan operasi union untuk menambahkan jumlah baris yang sama banyaknya dengan baris yang nilai endword-nya tidak sama dengan him, sehingga baris tambahan ini memiliki label = 0.

Sebagai pengingat, dalam SQL operator tidak sama dengan menggunakan <>.

Latihan ini adalah bagian dari kursus

Pengantar Spark SQL dalam Python

Lihat Kursus

Petunjuk latihan

  • Impor fungsi lit.
  • Pilih baris saat endword adalah 'him' dan tambahkan kolom bilangan bulat label dengan nilai 1.
  • Pilih baris saat endword bukan 'him' dan tambahkan kolom bilangan bulat label dengan nilai 0.
  • Union kedua himpunan ini, dengan jumlah contoh negatif sama dengan jumlah contoh positif.

Latihan interaktif praktis

Cobalah latihan ini dengan menyelesaikan kode contoh berikut.

# 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)
Edit dan Jalankan Kode