Zacznij terazZacznij za darmo

Praca z kolumnami tablicowymi

Dostępna jest funkcja SQL udf, a także ramka danych df_before typu DataFrame[doc: array<string>, in: array<string>, out: array<string>].

Zmienna TRIVIAL_TOKENS jest zbiorem. Zawiera pewne słowa, które chcemy usunąć.

To ćwiczenie jest częścią kursu

Wprowadzenie do Spark SQL w Pythonie

Zobacz kurs

Instrukcje do ćwiczenia

  • Wyświetl wiersze z df_before, w których doc zawiera element 5.
  • Utwórz UDF, który usuwa z kolumny tablicowej elementy znajdujące się w TRIVIAL_TOKENS. Zachowanie kolejności nie jest wymagane.
  • Usuń tokeny z kolumn in i out w df2, które pojawiają się w TRIVIAL_TOKENS.

Interaktywne ćwiczenie praktyczne

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

# Show the rows where doc contains the item '5'
df_before.where(array_contains('doc', '____')).show()

# UDF removes items in TRIVIAL_TOKENS from array
rm_trivial_udf = udf(lambda x:
                     list(set(x) - ____) if x
                     else x,
                     ArrayType(____()))

# Remove trivial tokens from 'in' and 'out' columns of df2
df_after = df_before.withColumn('in', ____('in'))\
                    .withColumn('out', ____('out'))

# Show the rows of df_after where doc contains the item '5'
df_after.where(array_contains('doc','5')).show()
Edytuj i uruchom kod