gpt4 book ai didi

r - 有没有办法在 spark 或 pyspark 中模仿 R 的高阶(二进制)函数速记语法?

转载 作者:行者123 更新时间:2023-12-01 12:34:45 26 4
gpt4 key购买 nike

R 中,我可以编写以下内容:

## Explicit
Reduce(function(x,y) x*y, c(1, 2, 3))
# returns 6

但是,我也可以通过以下方式不那么明确地做到这一点:

## Less explicit
Reduce(`*`, c(1, 2, 3))
# also returns 6


pyspark 中,我可以执行以下操作:

rdd = sc.parallelize([1, 2, 3])
rdd.reduce(lambda a, b: a * b)


问题:你能用 pyspark 或某种匿名程序模仿 R 的 Reduce('*', ...) 的“速记”(不太明确的)语法吗函数?

最佳答案

在 R 中,您提供一个二元函数。乘法运算符(与所有运算符一样)实际上是一个二元函数。类型

`*`(2, 3)

明白我的意思。

在 Python 中,乘法的等价物是 operator.mul

所以:

rdd = sc.parallelize([1, 2, 3])
rdd.reduce(operator.mul)

关于r - 有没有办法在 spark 或 pyspark 中模仿 R 的高阶(二进制)函数速记语法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30784889/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com