TableValuedFunction.posexplode

Vrátí datový rámec obsahující nový řádek pro každý prvek s pozicí v daném poli nebo mapě. Použije výchozí název pos sloupce pro umístění a col pro prvky v poli a keyvalue pro prvky v mapě, pokud není uvedeno jinak.

Syntaxe

spark.tvf.posexplode(collection)

Parametry

Parameter Typ Description
collection pyspark.sql.Column Cílový sloupec, na který chcete pracovat.

Návraty

pyspark.sql.DataFrame: Datový rámec s novým řádkem pro každý prvek spolu s jeho pozicí.

Examples

import pyspark.sql.functions as sf
spark.tvf.posexplode(sf.array(sf.lit(1), sf.lit(2), sf.lit(3))).show()
+---+---+
|pos|col|
+---+---+
|  0|  1|
|  1|  2|
|  2|  3|
+---+---+
import pyspark.sql.functions as sf
spark.tvf.posexplode(sf.create_map(sf.lit("a"), sf.lit("b"))).show()
+---+---+-----+
|pos|key|value|
+---+---+-----+
|  0|  a|    b|
+---+---+-----+