array_remove

array_remove(col, element)

array_remove - удаляет элемент из массива (по значению)

Параметры
col: Column or str. столбец содержащий массив
element: элемент который необходимо удалить из массива
Возвращает
Column массив, исключая заданное значение.

array_remove example


from pyspark.sql import SparkSession
from pyspark.sql.functions import  array_remove

# Создание сессии Spark
spark = SparkSession.builder.appName("array_remove_example").getOrCreate()

# Пример данных
data = [([1, 1, 3],), ([1, 5, 6, 7,1],), ([1, None, None, None],), ([],), (None,)]
df = spark.createDataFrame(data, ["values"])

# удаляем значение (1) в  массиве 
df_with_array_remove = df.withColumn("array_remove", array_remove("values", 1))

# Отображение результата
df_with_array_remove.show(truncate=False)

+---------------------+------------------+
|values               |array_remove      |
+---------------------+------------------+
|[1, 1, 3]            |[3]               |
|[1, 5, 6, 7, 1]      |[5, 6, 7]         |
|[1, NULL, NULL, NULL]|[NULL, NULL, NULL]|
|[]                   |[]                |
|NULL                 |NULL              |
+---------------------+------------------+

pyspark array_remove

Добавлено в версии2.4.0.
Обновлено в версии3.4.0.