Aller au contenu principal

array_contains

Renvoie une valeur booléenne indiquant si le tableau contient la valeur donnée, et false dans le cas contraire. Renvoie null si le tableau est null, true si le tableau contient la valeur donnée, et false dans le cas contraire.

Syntaxe

Python
from pyspark.sql import functions as sf

sf.array_contains(col, value)

parameter

parameter

Type

Description

col

pyspark.sql.Column ou str

La colonne cible contenant les tableaux.

value

Tout

La valeur ou la colonne à vérifier dans le tableau.

parameter

Type

Description

col

pyspark.sql.Column ou str

La colonne cible contenant les tableaux.

value

Tout

La valeur ou la colonne à vérifier dans le tableau.

Renvoie

pyspark.sql.Column: Une nouvelle colonne de type booléen, où chaque valeur indique si le tableau correspondant de la colonne d'entrée contient la valeur spécifiée.

Exemples

Exemple 1 : Utilisation de base de la fonction array_contains.

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

Exemple 2 : Utilisation de la fonction array_contains avec une colonne.

Python
from pyspark.sql import functions as sf
df = spark.createDataFrame([(["a", "b", "c"], "c"),
(["c", "d", "e"], "d"),
(["e", "a", "c"], "b")], ["data", "item"])
df.select(sf.array_contains(df.data, sf.col("item"))).show()
Output
+--------------------------+
|array_contains(data, item)|
+--------------------------+
| true|
| true|
| false|
+--------------------------+

Exemple 3 : Tentative d’utilisation de la fonction array_contains avec un tableau nul.

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

Exemple 4 : Utilisation de array_contains avec une colonne de tableau contenant des valeurs nulles.

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