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 un array contenente una colonna ripetuta per un numero specificato di volte.
Sintassi
from pyspark.sql import functions as sf
sf.array_repeat(col, count)
Parametri
| Parametro | TIPO | Description |
|---|---|---|
col |
pyspark.sql.Column o str |
Nome della colonna o espressione che rappresenta l'elemento da ripetere. |
count |
pyspark.sql.Column, stringa o intero |
Nome della colonna, un'espressione o un numero intero che rappresenta il numero di volte in cui ripetere l'elemento. |
Restituzioni
pyspark.sql.Column: nuova colonna contenente una matrice di elementi ripetuti.
Esempi
Esempio 1: Utilizzo con stringa
from pyspark.sql import functions as sf
df = spark.createDataFrame([('ab',)], ['data'])
df.select(sf.array_repeat(df.data, 3)).show()
+---------------------+
|array_repeat(data, 3)|
+---------------------+
| [ab, ab, ab]|
+---------------------+
Esempio 2: Utilizzo con integer
from pyspark.sql import functions as sf
df = spark.createDataFrame([(3,)], ['data'])
df.select(sf.array_repeat(df.data, 2)).show()
+---------------------+
|array_repeat(data, 2)|
+---------------------+
| [3, 3]|
+---------------------+
Esempio 3: Utilizzo con matrice
from pyspark.sql import functions as sf
df = spark.createDataFrame([(['apple', 'banana'],)], ['data'])
df.select(sf.array_repeat(df.data, 2)).show(truncate=False)
+----------------------------------+
|array_repeat(data, 2) |
+----------------------------------+
|[[apple, banana], [apple, banana]]|
+----------------------------------+
Esempio 4: Utilizzo con null
from pyspark.sql import functions as sf
from pyspark.sql.types import IntegerType, StructType, StructField
schema = StructType([
StructField("data", IntegerType(), True)
])
df = spark.createDataFrame([(None, )], schema=schema)
df.select(sf.array_repeat(df.data, 3)).show()
+---------------------+
|array_repeat(data, 3)|
+---------------------+
| [NULL, NULL, NULL]|
+---------------------+