Kom igångKom igång gratis

Använda användardefinierade funktioner i Spark

Du har sett en del av kraften bakom Sparks inbyggda strängfunktioner när det gäller att manipulera DataFrames. Men vid en viss punkt blir det svårt att bearbeta data utan att skapa en röra av nästlade funktionsanrop. Det är här användardefinierade funktioner (UDF:er) kommer till nytta för att manipulera dina DataFrames.

I den här övningen använder du din voter_df DataFrame, men du ska ersätta kolumnen first_name med för- och mellannamn.

Biblioteket pyspark.sql.functions är tillgängligt under aliaset F. Klasserna från pyspark.sql.types är redan importerade.

Den här övningen är en del av kursen

Datarensning med PySpark

Visa kurs

Övningsinstruktioner

  • Redigera funktionen getFirstAndMiddle() så att den returnerar en mellanslags­separerad sträng med namn, förutom det sista elementet i namnlistan.
  • Definiera funktionen som en användardefinierad funktion. Den ska returnera en strängtyp.
  • Skapa en ny kolumn på voter_df med namnet first_and_middle_name med hjälp av din UDF.
  • Visa DataFrame:n.

Interaktiv övning med praktiskt arbete

Testa den här övningen genom att slutföra den här exempelkoden.

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
____
Redigera och kör kod