Compartir a través de


array_repeat

Crea una matriz que contiene tiempos de recuento repetidos de columnas.

Syntax

from pyspark.sql import functions as sf

sf.array_repeat(col, count)

Parámetros

Parámetro Tipo Description
col pyspark.sql.Column o str Nombre de la columna o una expresión que representa el elemento que se va a repetir.
count pyspark.sql.Column, str o int Nombre de la columna, una expresión o un entero que representa el número de veces que se va a repetir el elemento.

Devoluciones

pyspark.sql.Column: una nueva columna que contiene una matriz de elementos repetidos.

Examples

Ejemplo 1: Uso con cadena

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]|
+---------------------+

Ejemplo 2: Uso con entero

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]|
+---------------------+

Ejemplo 3: Uso con matriz

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]]|
+----------------------------------+

Ejemplo 4: Uso 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]|
+---------------------+