IniziaInizia gratis

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

Visualizza il corso

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 select su df per applicare first_udf alla colonna output.

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)
Modifica ed esegui il codice