Nota
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
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|
+----+----+