Zacznij terazZacznij za darmo

Nadaj etykiety danym

Dostępna jest ramka danych df zawierająca kolumny endword (typ: string), features (typ: wektor) oraz outvec (typ: wektor). Wybierz wiersze, w których endword jest równe "him", i dodaj kolumnę label z wartością całkowitą 1. Następnie użyj operacji union, aby dodać taką samą liczbę wierszy, w których endword nie jest równe "him" – te dodatkowe wiersze powinny mieć label = 0.

Przypomnij sobie, że w SQL operator „różne od" zapisujemy jako <>.

To ćwiczenie jest częścią kursu

Wprowadzenie do Spark SQL w Pythonie

Zobacz kurs

Instrukcje do ćwiczenia

  • Zaimportuj funkcję lit.
  • Wybierz wiersze, w których endword wynosi 'him', i dodaj całkowitoliczbową kolumnę label z wartością 1.
  • Wybierz wiersze, w których endword nie wynosi 'him', i dodaj całkowitoliczbową kolumnę label z wartością 0.
  • Połącz oba zbiory za pomocą union, używając tylu przykładów negatywnych, ile jest przykładów pozytywnych.

Interaktywne ćwiczenie praktyczne

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

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