Crear un UDF para datos vectoriales
Tienes disponible un dataframe df con una columna output de tipo vector. Sus primeras cinco filas se muestran en la consola.
Este ejercicio forma parte del curso
Introducción a Spark SQL en Python
Instrucciones del ejercicio
- Crea un UDF llamado
first_udf. Debe seleccionar el primer elemento de una columna vectorial. Establece el resultado en un valor por defecto de 0.0 para cualquier elemento que no sea un vector con al menos un elemento y convierte la salida a float. - Usa la operación
selectsobredfpara aplicarfirst_udfa la columnaoutput.
Ejercicio interactivo práctico
Prueba este ejercicio y completa el código de muestra.
# 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)