Skip to content

elt(*inputs)

Описание

Функция elt() возвращает n-й элемент из списка входных значений. Например, возвращает второй элемент, когда n равно 2.

Параметры

  • *inputs: Column или значения - список значений, из которых нужно выбрать элемент

Возвращаемое значение

String - выбранный элемент из списка входных значений

Пример использования

from pyspark.sql.functions import elt

# Создаем DataFrame
df = spark.createDataFrame([
    (1,),
    (2,),
    (3,),
    (4,),
    (5,),
    (0,),
    (-1,),
    (None,)
], ["index"])

# Выбираем элементы из списка
df.select(
    "index",
    elt("index", "First", "Second", "Third", "Fourth").alias("selected")
).show()

# Результат:
# +-----+--------+
# |index|selected|
# +-----+--------+
# |    1|   First|  # Первый элемент
# |    2|  Second|  # Второй элемент
# |    3|   Third|  # Третий элемент
# |    4|  Fourth|  # Четвертый элемент
# |    5|    null|  # Индекс вне диапазона
# |    0|    null|  # Индекс 0
# |   -1|    null|  # Отрицательный индекс
# | null|    null|  # NULL индекс
# +-----+--------+

# Пример с разными типами данных
df.select(
    elt(2, 1, "two", 3.0, True).alias("mixed_types")
).show()

Примечания

  • Индексация начинается с 1
  • Если индекс меньше 1 или больше количества элементов, возвращается NULL
  • Если индекс NULL, возвращается NULL
  • Все входные значения приводятся к строковому типу
  • Функция полезна для создания условных выражений или выбора значений из списка