Мне просто интересно, как можно go зарегистрировать функцию UDF в SparkR? Я знаю, что в PySpark вы можете использовать «spark.udf.register ()», который позволяет вам вызывать этот UDF в запросе spark- sql. Как мы можем сделать то же самое в SparkR?
Я пытаюсь зарегистрировать функцию с именем "Quantile ()" из пакета "DescTools".
Вот мой код:
library(SparkR)
library(DescTools)
sparkR.session()
data <- read.csv("C:/Users/.../.csv")
a <- data[['CommuteKM']]
b <- data[['SurveyWeight']]
df_sparkR <- as.DataFrame(data)
SparkR::createOrReplaceTempView(df_sparkR, "TABLE")
df_final = SparkR::sql("SELECT hair, Quantile(CommuteKM, SurveyWeight, 0.25) from TABLE GROUP BY hair")
Однако это не будет работать, так как возвращает сообщение об ошибке: « org. apache .spark. sql .AnalysisException: Неопределенная функция:« Quantile ». Эта функция не является ни зарегистрированной временной функция или постоянная функция, зарегистрированная в базе данных."
Любая и вся помощь будет оценена.
Спасибо.