Anmerkung
Der Zugriff auf diese Seite erfordert eine Genehmigung. Du kannst versuchen, dich anzumelden oder die Verzeichnisse zu wechseln.
Der Zugriff auf diese Seite erfordert eine Genehmigung. Du kannst versuchen , die Verzeichnisse zu wechseln.
Erstellt aus einem Array von Strukturen eine Tabelle.
Diese Funktion verwendet eine Eingabespalte, die ein Array von Strukturen enthält, und gibt eine neue Spalte zurück, in der jede Struktur im Array in einer separaten Zeile explodiert ist.
Syntax
spark.tvf.inline(input)
Die Parameter
| Parameter | Typ | Description |
|---|---|---|
input |
pyspark.sql.Column |
Eingabespalte mit Werten, die explodiert werden sollen. |
Rückkehr
pyspark.sql.DataFrame: Ein DataFrame mit explodierten Strukturzeilen.
Examples
Beispiel 1: Verwenden von Inline mit einem einzelnen Strukturarray
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|
+---+---+
Beispiel 2: Verwenden von Inline mit einer leeren Strukturarrayspalte
import pyspark.sql.functions as sf
spark.tvf.inline(sf.array().astype("array<struct<a:int,b:int>>")).show()
+---+---+
| a| b|
+---+---+
+---+---+
Beispiel 3: Verwenden von Inline mit einer Strukturarrayspalte mit Nullwerten
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|
+----+----+