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
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
selectopdfomfirst_udftoe te passen op de kolomoutput.
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)