Поделиться через


transform_values

Применяет функцию к каждой паре "ключ-значение" в карте и возвращает карту с результатами этих приложений в качестве новых значений для пар. Поддерживает Spark Connect.

Для соответствующей функции Databricks SQL смотрите функцию transform_values.

Синтаксис

from pyspark.databricks.sql import functions as dbf

dbf.transform_values(col=<col>, f=<f>)

Параметры

Параметр Тип Description
col pyspark.sql.Column или str Имя столбца или выражения.
f function Двоичная функция.

Возвраты

pyspark.sql.Column: новая карта записей, в которых вычисляются новые значения путем применения данной функции к каждому аргументу значения ключа.

Примеры

from pyspark.databricks.sql import functions as dbf
df = spark.createDataFrame([(1, {"IT": 10.0, "SALES": 2.0, "OPS": 24.0})], ("id", "data"))
row = df.select(dbf.transform_values(
    "data", lambda k, v: dbf.when(k.isin("IT", "OPS"), v + 10.0).otherwise(v)
).alias("new_data")).head()
sorted(row["new_data"].items())
[('IT', 20.0), ('OPS', 34.0), ('SALES', 2.0)]