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 ein einzelnes Array aus einem Array von Arrays. Wenn eine Struktur geschachtelter Arrays tiefer als zwei Ebenen ist, wird nur eine Schachtelungsebene entfernt.
Syntax
from pyspark.sql import functions as sf
sf.flatten(col)
Die Parameter
| Parameter | Typ | Description |
|---|---|---|
col |
pyspark.sql.Column oder str |
Der Name der Spalte oder des Ausdrucks, die abgeflacht werden soll. |
Rückkehr
pyspark.sql.Column: Eine neue Spalte, die das flache Array enthält.
Examples
Beispiel 1: Flachung eines einfachen geschachtelten Arrays
from pyspark.sql import functions as sf
df = spark.createDataFrame([([[1, 2, 3], [4, 5], [6]],)], ['data'])
df.select(sf.flatten(df.data)).show()
+------------------+
| flatten(data)|
+------------------+
|[1, 2, 3, 4, 5, 6]|
+------------------+
Beispiel 2: Flachen eines Arrays mit Nullwerten
from pyspark.sql import functions as sf
df = spark.createDataFrame([([None, [4, 5]],)], ['data'])
df.select(sf.flatten(df.data)).show()
+-------------+
|flatten(data)|
+-------------+
| NULL|
+-------------+
Beispiel 3: Abgrenzen eines Arrays mit mehr als zwei Schachtelungsebenen
from pyspark.sql import functions as sf
df = spark.createDataFrame([([[[1, 2], [3, 4]], [[5, 6], [7, 8]]],)], ['data'])
df.select(sf.flatten(df.data)).show(truncate=False)
+--------------------------------+
|flatten(data) |
+--------------------------------+
|[[1, 2], [3, 4], [5, 6], [7, 8]]|
+--------------------------------+
Beispiel 4: Flachen eines Arrays mit gemischten Typen
from pyspark.sql import functions as sf
df = spark.createDataFrame([([['a', 'b', 'c'], [1, 2, 3]],)], ['data'])
df.select(sf.flatten(df.data)).show()
+------------------+
| flatten(data)|
+------------------+
|[a, b, c, 1, 2, 3]|
+------------------+