Skip to content

concat(*cols)

Описание

Функция concat() объединяет несколько входных столбцов в один столбец. Может использоваться для объединения строк или массивов.

Параметры

  • *cols: Column - один или несколько столбцов для объединения

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

Column - объединенный столбец

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

from pyspark.sql.functions import concat, array, lit

# Создаем DataFrame
df = spark.createDataFrame([
    (1, "a", 10),
    (2, "b", 20),
    (3, "c", 30)
], ["id", "letter", "value"])

# Объединяем строки
df.select(
    "id",
    concat("letter", lit("_"), "value").alias("concatenated_string")
).show(truncate=False)

# Результат:
# +---+------------------+
# |id |concatenated_string|
# +---+------------------+
# |1  |a_10             |
# |2  |b_20             |
# |3  |c_30             |
# +---+------------------+

# Объединяем массивы
df.select(
    "id",
    concat(array("id"), array("value")).alias("concatenated_array")
).show(truncate=False)

Примечания

  • Для объединения строк можно использовать concat_ws() для указания разделителя
  • Для объединения массивов все столбцы должны быть типа ArrayType
  • Для создания массива используйте array()
  • Для разделения строки используйте split()