size(col)
Описание
Функция size()
возвращает размер массива или количество элементов в массиве.
Параметры
col
: Column - столбец с массивом
Возвращаемое значение
Integer - количество элементов в массиве
Пример использования
from pyspark.sql.functions import size
from pyspark.sql import SparkSession
# Создаем SparkSession
spark = SparkSession.builder.appName("size_example").getOrCreate()
# Создаем DataFrame
data = [
([1, 2, 3]),
([4, 5]),
([6, 7, 8, 9])
]
df = spark.createDataFrame(data, ["array_col"])
# Получаем размеры массивов
result = df.select(
"array_col",
size("array_col").alias("array_size")
).show()
# Результат:
# +------------+-----------+
# |array_col |array_size |
# +------------+-----------+
# |[1, 2, 3] |3 |
# |[4, 5] |2 |
# |[6, 7, 8, 9]|4 |
# +------------+-----------+
Примечания
- Для получения количества элементов в JSON объекте используйте
json_object_keys()
- Для получения количества элементов в массиве или карте используйте
cardinality()
- Для сортировки массива используйте
sort_array()
- Для безопасного получения элемента по индексу используйте
try_element_at()