Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Crea una singola matrice da una matrice di matrici. Se una struttura di matrici annidate è più profonda di due livelli, viene rimosso un solo livello di annidamento.
Sintassi
from pyspark.sql import functions as sf
sf.flatten(col)
Parametri
| Parametro | TIPO | Description |
|---|---|---|
col |
pyspark.sql.Column o str |
Nome della colonna o dell'espressione da rendere flat. |
Restituzioni
pyspark.sql.Column: nuova colonna contenente la matrice bidimensionale.
Esempi
Esempio 1: Appiattimento di una semplice matrice nidificata
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]|
+------------------+
Esempio 2: Appiattimento di una matrice con valori Null
from pyspark.sql import functions as sf
df = spark.createDataFrame([([None, [4, 5]],)], ['data'])
df.select(sf.flatten(df.data)).show()
+-------------+
|flatten(data)|
+-------------+
| NULL|
+-------------+
Esempio 3: Appiattimento di una matrice con più di due livelli di annidamento
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]]|
+--------------------------------+
Esempio 4: Appiattimento di una matrice con tipi misti
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]|
+------------------+