Skip to content

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()