通过


transform_values

将函数应用于映射中的每个键值对,并将这些应用程序的结果作为对的新值返回映射。 支持 Spark Connect。

有关相应的 Databricks SQL 函数,请参阅 transform_values 函数

Syntax

from pyspark.databricks.sql import functions as dbf

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

参数

参数 类型 Description
col pyspark.sql.Columnstr 列或表达式的名称。
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)]