当前位置: 首页>>编程示例 >>用法及示例精选 >>正文


Python pyspark zip_with用法及代码示例

本文简要介绍 pyspark.sql.functions.zip_with 的用法。

用法:

pyspark.sql.functions.zip_with(left, right, f)

使用函数将两个给定的数组按元素合并到一个数组中。如果一个数组较短,则在应用函数之前在末尾附加空值以匹配较长数组的长度。

版本 3.1.0 中的新函数。

参数

left Column 或 str

第一列或表达式的名称

right Column 或 str

第二列或表达式的名称

f函数

二进制函数 (x1: Column, x2: Column) -> Column... 可以使用 Column 的方法,在 pyspark.sql.functions 和 Scala 中定义的函数 UserDefinedFunctions 。不支持 Python UserDefinedFunctions (SPARK-27052)。

返回

Column

例子

>>> df = spark.createDataFrame([(1, [1, 3, 5, 8], [0, 2, 4, 6])], ("id", "xs", "ys"))
>>> df.select(zip_with("xs", "ys", lambda x, y: x ** y).alias("powers")).show(truncate=False)
+---------------------------+
|powers                     |
+---------------------------+
|[1.0, 9.0, 625.0, 262144.0]|
+---------------------------+
>>> df = spark.createDataFrame([(1, ["foo", "bar"], [1, 2, 3])], ("id", "xs", "ys"))
>>> df.select(zip_with("xs", "ys", lambda x, y: concat_ws("_", x, y)).alias("xs_ys")).show()
+-----------------+
|            xs_ys|
+-----------------+
|[foo_1, bar_2, 3]|
+-----------------+

相关用法


注:本文由纯净天空筛选整理自spark.apache.org大神的英文原创作品 pyspark.sql.functions.zip_with。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。