Compartilhar via


TableValuedFunction.explode_outer

Retorna um DataFrame que contém uma nova linha para cada elemento com posição na matriz ou mapa fornecido. Ao contrário de explodir, se a matriz/mapa for nulo ou vazio, então nulo será produzido. Usa o nome col da coluna padrão para elementos na matriz e key para value elementos no mapa, a menos que especificado o contrário.

Sintaxe

spark.tvf.explode_outer(collection)

Parâmetros

Parâmetro Tipo Description
collection pyspark.sql.Column Coluna de destino na qual trabalhar.

Devoluções

pyspark.sql.DataFrame: um DataFrame com uma nova linha para cada elemento ou nulo se a coleção estiver vazia ou nula.

Exemplos

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