Aan de slagGa gratis aan de slag

Een UDF maken voor vectordata

Er is een dataframe df beschikbaar met een kolom output van het type vector. De eerste vijf rijen worden in de console getoond.

Deze oefening maakt deel uit van de cursus

Introductie tot Spark SQL in Python

Cursus bekijken

Oefeninstructies

  • Maak een UDF genaamd first_udf. Deze selecteert het eerste element van een vectorkolom. Stel het resultaat in op een standaardwaarde van 0.0 voor elk item dat geen vector is met ten minste één element en cast de output als een float.
  • Gebruik de bewerking select op df om first_udf toe te passen op de kolom output.

Praktische interactieve oefening

Probeer deze oefening eens door deze voorbeeldcode in te vullen.

# Selects the first element of a vector column
first_udf = ____(lambda x:
            ____(x.indices[0]) 
            if (x and hasattr(x, "toArray") and x.____())
            else 0.0,
            FloatType())

# Apply first_udf to the output column
df.select(____("output").alias("result")).show(5)
Code bewerken en uitvoeren