CommencerCommencer gratuitement

Créer un UDF pour des données vectorielles

Un dataframe df est disponible, avec une colonne output de type vector. Ses cinq premières lignes sont affichées dans la console.

Cet exercice fait partie du cours

Introduction à Spark SQL en Python

Afficher le cours

Instructions

  • Créez un UDF appelé first_udf. Il sélectionne le premier élément d’une colonne de type vecteur. Définissez le résultat à 0.0 par défaut pour tout élément qui n’est pas un vecteur contenant au moins un élément et convertissez la sortie en float.
  • Utilisez l’opération select sur df pour appliquer first_udf à la colonne output.

Exercice interactif pratique

Essayez cet exercice en complétant cet exemple de code.

# 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)
Modifier et exécuter le code