Creare una UDF per dati vettoriali
È disponibile un dataframe df con una colonna output di tipo vector. Le sue prime cinque righe sono mostrate nella console.
Questo esercizio fa parte del corso
Introduzione a Spark SQL in Python
Istruzioni dell'esercizio
- Crea una UDF chiamata
first_udf. Deve selezionare il primo elemento di una colonna vettoriale. Imposta il risultato su un valore predefinito di 0.0 per qualsiasi elemento che non sia un vettore contenente almeno un elemento e fai il cast dell'output a float. - Usa l'operazione
selectsudfper applicarefirst_udfalla colonnaoutput.
Esercizio pratico interattivo
Prova a risolvere questo esercizio completando il codice di esempio.
# 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)