Aller au contenu principal

get

Renvoie l'élément d'un tableau à l'index donné (basé sur 0). Si l’index pointe en dehors des limites du tableau, cette fonction renvoie la valeur NULL. La position n’est pas un index basé sur 1, mais sur 0.

Syntaxe

Python
from pyspark.sql import functions as sf

sf.get(col, index)

parameter

parameter

Type

Description

col

pyspark.sql.Column ou str

Nom de la colonne contenant le tableau.

index

pyspark.sql.Column, str ou int

Index à vérifier dans le tableau.

parameter

Type

Description

col

pyspark.sql.Column ou str

Nom de la colonne contenant le tableau.

index

pyspark.sql.Column, str ou int

Index à vérifier dans le tableau.

Renvoie

pyspark.sql.Column: Valeur à la position donnée.

Exemples

Exemple 1 : Obtention d’un élément à une position fixe

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

**Exemple 2** : Accéder à un élément en dehors des limites du tableau

Python
from pyspark.sql import functions as sf
df = spark.createDataFrame([(["a", "b", "c"],)], ['data'])
df.select(sf.get(df.data, 3)).show()
Output
+------------+
|get(data, 3)|
+------------+
| NULL|
+------------+

Exemple 3 : obtenir un élément à une position spécifiée par une autre colonne

Python
from pyspark.sql import functions as sf
df = spark.createDataFrame([(["a", "b", "c"], 2)], ['data', 'index'])
df.select(sf.get(df.data, df.index)).show()
Output
+----------------+
|get(data, index)|
+----------------+
| c|
+----------------+

Exemple 4 : Obtenir un élément à une position calculée à partir d'une autre colonne

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

Exemple 5 e : Récupération d'un élément à une position négative

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