配列繰り返し
count 回繰り返される列を含む配列を作成します。
構文
Python
from pyspark.sql import functions as sf
sf.array_repeat(col, count)
パラメーター
パラメーター | Type | 説明 |
|---|---|---|
|
| 繰り返される要素を表す列の名前または式。 |
|
| 列の名前、式、または要素を繰り返す回数を表す整数。 |
戻り値
pyspark.sql.Column: 繰り返される要素の配列を含む新しい列。
例
例1 : 文字列の使用
Python
from pyspark.sql import functions as sf
df = spark.createDataFrame([('ab',)], ['data'])
df.select(sf.array_repeat(df.data, 3)).show()
Output
+---------------------+
|array_repeat(data, 3)|
+---------------------+
| [ab, ab, ab]|
+---------------------+
例2 : 整数での使用
Python
from pyspark.sql import functions as sf
df = spark.createDataFrame([(3,)], ['data'])
df.select(sf.array_repeat(df.data, 2)).show()
Output
+---------------------+
|array_repeat(data, 2)|
+---------------------+
| [3, 3]|
+---------------------+
例3 : 配列での使用
Python
from pyspark.sql import functions as sf
df = spark.createDataFrame([(['apple', 'banana'],)], ['data'])
df.select(sf.array_repeat(df.data, 2)).show(truncate=False)
Output
+----------------------------------+
|array_repeat(data, 2) |
+----------------------------------+
|[[apple, banana], [apple, banana]]|
+----------------------------------+
例4 : nullの使用
Python
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()
Output
+---------------------+
|array_repeat(data, 3)|
+---------------------+
| [NULL, NULL, NULL]|
+---------------------+