Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Menyisipkan item ke dalam array yang diberikan pada indeks array yang ditentukan. Indeks array dimulai pada 1, atau mulai dari akhir jika indeks negatif. Indeks di atas ukuran array menambahkan array, atau menambahkan array jika indeks negatif, dengan elemen 'null'.
Syntax
from pyspark.sql import functions as sf
sf.array_insert(arr, pos, value)
Parameter-parameternya
| Pengaturan | Tipe | Description |
|---|---|---|
arr |
pyspark.sql.Column atau str |
Nama kolom yang berisi array |
pos |
pyspark.sql.Column, str, atau int |
Nama kolom jenis numerik yang menunjukkan posisi penyisipan (dimulai pada indeks 1, posisi negatif adalah awal dari bagian belakang array) |
value |
Apa saja | Nilai harfiah, atau ekspresi Kolom. |
Pengembalian Barang
pyspark.sql.Column: array nilai, termasuk nilai baru yang ditentukan
Examples
Contoh 1: Menyisipkan nilai pada posisi tertentu
from pyspark.sql import functions as sf
df = spark.createDataFrame([(['a', 'b', 'c'],)], ['data'])
df.select(sf.array_insert(df.data, 2, 'd')).show()
+------------------------+
|array_insert(data, 2, d)|
+------------------------+
| [a, d, b, c]|
+------------------------+
Contoh 2: Menyisipkan nilai pada posisi negatif
from pyspark.sql import functions as sf
df = spark.createDataFrame([(['a', 'b', 'c'],)], ['data'])
df.select(sf.array_insert(df.data, -2, 'd')).show()
+-------------------------+
|array_insert(data, -2, d)|
+-------------------------+
| [a, b, d, c]|
+-------------------------+
Contoh 3: Menyisipkan nilai pada posisi yang lebih besar dari ukuran array
from pyspark.sql import functions as sf
df = spark.createDataFrame([(['a', 'b', 'c'],)], ['data'])
df.select(sf.array_insert(df.data, 5, 'e')).show()
+------------------------+
|array_insert(data, 5, e)|
+------------------------+
| [a, b, c, NULL, e]|
+------------------------+
Contoh 4: Menyisipkan nilai NULL
from pyspark.sql import functions as sf
df = spark.createDataFrame([(['a', 'b', 'c'],)], ['data'])
df.select(sf.array_insert(df.data, 2, sf.lit(None))).show()
+---------------------------+
|array_insert(data, 2, NULL)|
+---------------------------+
| [a, NULL, b, c]|
+---------------------------+
Contoh 5: Menyisipkan nilai ke dalam array NULL
from pyspark.sql import functions as sf
from pyspark.sql.types import ArrayType, IntegerType, StructType, StructField
schema = StructType([StructField("data", ArrayType(IntegerType()), True)])
df = spark.createDataFrame([(None,)], schema=schema)
df.select(sf.array_insert(df.data, 1, 5)).show()
+------------------------+
|array_insert(data, 1, 5)|
+------------------------+
| NULL|
+------------------------+