Začněte nyníZačněte zdarma

Použití uživatelsky definovaných funkcí v Sparku

Viděl/a jsi část síly vestavěných řetězcových funkcí Sparku při práci s DataFrames. Jakmile ale zpracování dat dosáhne určité složitosti, začne se z kódu stávat nepřehledné klubko vnořených volání funkcí. Právě tady se hodí uživatelsky definované funkce (UDF), které ti pomůžou s manipulací DataFrames.

V tomto cvičení budeš pracovat s DataFramem voter_df a nahradíš sloupec first_name kombinací křestního jména a prostředního jména.

Knihovna pyspark.sql.functions je dostupná pod aliasem F. Třídy z pyspark.sql.types jsou již naimportované.

Toto cvičení je součástí kurzu

Cleaning Data with PySpark

Zobrazit kurz

Pokyny k cvičení

  • Uprav funkci getFirstAndMiddle() tak, aby vracela řetězec jmen oddělených mezerou — vše kromě posledního prvku v seznamu jmen.
  • Definuj funkci jako uživatelsky definovanou funkci (UDF). Návratový typ by měl být řetězec.
  • Vytvoř nový sloupec first_and_middle_name v DataFramu voter_df pomocí své UDF.
  • Zobraz DataFrame.

Interaktivní cvičení na vyzkoušení si v praxi

Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.

def getFirstAndMiddle(names):
  # Return a space separated string of names
  return ' '.join(____)

# Define the method as a UDF
udfFirstAndMiddle = F.____(____, ____)

# Create a new column using your UDF
voter_df = voter_df.withColumn('first_and_middle_name', ____(____))

# Show the DataFrame
____
Upravit a spustit kód