Oharra
Baimena behar duzu orria atzitzeko. Direktorioetan saioa has dezakezu edo haiek alda ditzakezu.
Baimena behar duzu orria atzitzeko. Direktorioak alda ditzakezu.
Explota una matriz de estructuras en una tabla.
Esta función toma una columna de entrada que contiene una matriz de estructuras y devuelve una nueva columna donde cada estructura de la matriz se explota en una fila independiente.
Syntax
spark.tvf.inline(input)
Parámetros
| Parámetro | Tipo | Description |
|---|---|---|
input |
pyspark.sql.Column |
Columna de entrada de valores que se va a explotar. |
Devoluciones
pyspark.sql.DataFrame: DataFrame con filas de estructura explotadas.
Examples
Ejemplo 1: Uso de una matriz de estructura única en línea
import pyspark.sql.functions as sf
spark.tvf.inline(sf.array(
sf.named_struct(sf.lit("a"), sf.lit(1), sf.lit("b"), sf.lit(2)),
sf.named_struct(sf.lit("a"), sf.lit(3), sf.lit("b"), sf.lit(4))
)).show()
+---+---+
| a| b|
+---+---+
| 1| 2|
| 3| 4|
+---+---+
Ejemplo 2: Uso en línea con una columna de matriz de estructura vacía
import pyspark.sql.functions as sf
spark.tvf.inline(sf.array().astype("array<struct<a:int,b:int>>")).show()
+---+---+
| a| b|
+---+---+
+---+---+
Ejemplo 3: Uso en línea con una columna de matriz de estructura que contiene valores NULL
import pyspark.sql.functions as sf
spark.tvf.inline(sf.array(
sf.named_struct(sf.lit("a"), sf.lit(1), sf.lit("b"), sf.lit(2)),
sf.lit(None),
sf.named_struct(sf.lit("a"), sf.lit(3), sf.lit("b"), sf.lit(4))
)).show()
+----+----+
| a| b|
+----+----+
| 1| 2|
|NULL|NULL|
| 3| 4|
+----+----+