Aller au contenu principal

try_element_at

Fonction de collection : renvoie un élément du tableau à l'index donné (à base de 1) ou la valeur pour la clé donnée dans un mappage. Pour les tableaux, si l'index est 0, Spark générera une erreur. Si l'index < 0, accède aux éléments du dernier au premier. La fonction renvoie toujours NULL si l'index dépasse la longueur du tableau. Pour les mappages, la fonction renvoie toujours NULL si la clé n'est pas contenue dans le mappage.

Pour la fonction Databricks SQL correspondante, consultez la fonctiontry_element_at.

Syntaxe

Python
from pyspark.sql import functions as dbf

dbf.try_element_at(col=<col>, extraction=<extraction>)

parameter

parameter

Type

Description

col

pyspark.sql.Column OU str

Nom de la colonne contenant un tableau ou une carte.

extraction

pyspark.sql.Column OU str

Index à vérifier dans un tableau ou clé à vérifier dans une map.

parameter

Type

Description

col

pyspark.sql.Column OU str

Nom de la colonne contenant un tableau ou une carte.

extraction

pyspark.sql.Column OU str

Index à vérifier dans un tableau ou clé à vérifier dans une map.

Exemples

Exemple 1 : Obtention du premier élément d'un tableau

Python
from pyspark.sql import functions as dbf
df = spark.createDataFrame([(["a", "b", "c"],)], ['data'])
df.select(dbf.try_element_at(df.data, dbf.lit(1))).show()
Output
+-----------------------+
|try_element_at(data, 1)|
+-----------------------+
| a|
+-----------------------+

**Exemple 2** : Obtention du dernier élément d'un tableau à l'aide d'un index négatif

Python
from pyspark.sql import functions as dbf
df = spark.createDataFrame([(["a", "b", "c"],)], ['data'])
df.select(dbf.try_element_at(df.data, dbf.lit(-1))).show()
Output
+------------------------+
|try_element_at(data, -1)|
+------------------------+
| c|
+------------------------+