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.
Gibt einen DataFrame zurück, der eine neue Zeile für jedes Element in der angegebenen Matrix oder Zuordnung enthält. Verwendet den Standardspaltennamen col für Elemente im Array und keyvalue für Elemente in der Zuordnung, sofern nicht anders angegeben.
Syntax
spark.tvf.explode(collection)
Die Parameter
| Parameter | Typ | Description |
|---|---|---|
collection |
pyspark.sql.Column |
Zielspalte, an der gearbeitet werden soll. |
Rückkehr
pyspark.sql.DataFrame: Ein DataFrame mit einer neuen Zeile für jedes Element.
Examples
Beispiel 1: Explodieren einer Arrayspalte
import pyspark.sql.functions as sf
spark.tvf.explode(sf.array(sf.lit(1), sf.lit(2), sf.lit(3))).show()
+---+
|col|
+---+
| 1|
| 2|
| 3|
+---+
Beispiel 2: Explodieren einer Kartenspalte
import pyspark.sql.functions as sf
spark.tvf.explode(
sf.create_map(sf.lit("a"), sf.lit("b"), sf.lit("c"), sf.lit("d"))
).show()
+---+-----+
|key|value|
+---+-----+
| a| b|
| c| d|
+---+-----+
Beispiel 3: Explodieren eines Arrays von Strukturspalten
import pyspark.sql.functions as sf
spark.tvf.explode(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))
)).select("col.*").show()
+---+---+
| a| b|
+---+---+
| 1| 2|
| 3| 4|
+---+---+
Beispiel 4: Explodieren einer leeren Arrayspalte
import pyspark.sql.functions as sf
spark.tvf.explode(sf.array()).show()
+---+
|col|
+---+
+---+
Beispiel 5: Explodieren einer leeren Kartenspalte
import pyspark.sql.functions as sf
spark.tvf.explode(sf.create_map()).show()
+---+-----+
|key|value|
+---+-----+
+---+-----+