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
from pyspark.sql import functions as sf
sf.get(col, index)
parameter
parameter | Type | Description |
|---|---|---|
|
| Nom de la colonne contenant le tableau. |
|
| 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
from pyspark.sql import functions as sf
df = spark.createDataFrame([(["a", "b", "c"],)], ['data'])
df.select(sf.get(df.data, 1)).show()
+------------+
|get(data, 1)|
+------------+
| b|
+------------+
**Exemple 2** : Accéder à un élément en dehors des limites du tableau
from pyspark.sql import functions as sf
df = spark.createDataFrame([(["a", "b", "c"],)], ['data'])
df.select(sf.get(df.data, 3)).show()
+------------+
|get(data, 3)|
+------------+
| NULL|
+------------+
Exemple 3 : obtenir un élément à une position spécifiée par une autre colonne
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()
+----------------+
|get(data, index)|
+----------------+
| c|
+----------------+
Exemple 4 : Obtenir un élément à une position calculée à partir d'une autre colonne
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()
+----------------------+
|get(data, (index - 1))|
+----------------------+
| b|
+----------------------+
Exemple 5 e : Récupération d'un élément à une position négative
from pyspark.sql import functions as sf
df = spark.createDataFrame([(["a", "b", "c"], )], ['data'])
df.select(sf.get(df.data, -1)).show()
+-------------+
|get(data, -1)|
+-------------+
| NULL|
+-------------+