【发布时间】:2018-04-26 06:16:30
【问题描述】:
假设我定义了一个将两个数字作为输入的 R 函数:
effectifTouche <- function(audience, extrapolated){
TM = audience / 1000000
VE= extrapolated/100
TME = TM * VE
nbVis = TME / 1000000.1
return (nbVis)
}
它给了我一个分数,所以我想在 SparkR DataFrame 的两列上将它用作 udf。
它在 pyspark 中工作,我想知道 SparkR 是如何工作的。
所以我在 Sparklyr 和 SparkR 中尝试了很多东西,但我无法让这个 UDF 工作。
理想情况下,我很乐意这样做:
df %>%
dapply(df_join,
function(p) { effectifTouche(p$audience,p$extrapolated)
})
effectifTouche 是我的 R 函数和受众,外推我的 spark DataFrame 的两列。
我很乐意为 SparkR 和 Sparklyr 两个库提供答案,因为我尝试了这两个库,并且检查了每个 github 问题,但没有成功。
非常感谢
编辑另一个棘手的用例
df %>%
mutate(my_var = as.numeric(strptime(endHour,format="%H:%M:%S"),unit="secs"))
【问题讨论】:
标签: r user-defined-functions sparkr sparklyr