Aller au contenu principal

TableValuedFunction.explode_outer

Renvoie un DataFrame contenant une nouvelle ligne pour chaque élément avec position dans le tableau ou la carte donné. Contrairement à l’explosion, si le tableau/la carte est nul ou vide, un résultat nul est produit. Utilise le nom de colonne par default col pour les éléments du tableau et key et value pour les éléments de la carte, sauf indication contraire.

Syntaxe

Python
spark.tvf.explode_outer(collection)

parameter

parameter

Type

Description

collection

pyspark.sql.Column

Colonne cible sur laquelle travailler.

parameter

Type

Description

collection

pyspark.sql.Column

Colonne cible sur laquelle travailler.

Renvoie

pyspark.sql.DataFrame: Un DataFrame avec une nouvelle ligne pour chaque élément, ou nul si la collection est vide ou nulle.

Exemples

Python
import pyspark.sql.functions as sf
spark.tvf.explode_outer(sf.array(sf.lit("foo"), sf.lit("bar"))).show()
Output
+---+
|col|
+---+
|foo|
|bar|
+---+
Python
import pyspark.sql.functions as sf
spark.tvf.explode_outer(sf.array()).show()
Output
+----+
| col|
+----+
|NULL|
+----+
Python
import pyspark.sql.functions as sf
spark.tvf.explode_outer(sf.create_map(sf.lit("x"), sf.lit(1.0))).show()
Output
+---+-----+
|key|value|
+---+-----+
| x| 1.0|
+---+-----+
Python
import pyspark.sql.functions as sf
spark.tvf.explode_outer(sf.create_map()).show()
Output
+----+-----+
| key|value|
+----+-----+
|NULL| NULL|
+----+-----+