SparkR :: gapply вопрос - PullRequest
       10

SparkR :: gapply вопрос

0 голосов
/ 30 апреля 2019

Попытка использовать функцию gapply в блоках данных для параллельной обработки.Есть две проблемы, с которыми я сталкиваюсь: при использовании кода, упомянутого в документации, иногда, когда я запускаю, он дает мне десериализатор == "byte" не TRUE.Он не согласован, иногда он запускается, иногда нет - я хочу передать пользовательскую функцию для gapply аргументов из другого пакета, но он выдает ошибку о том, что функция не может быть найдена

Есть кто-нибудьвозникла похожая проблема или идеи, как решить эту проблему?

library(SparkR)
library(tsintermittent)

df <- createDataFrame (list(list(1L, 1, "1", 0.1), list(1L, 2, "1", 0.2), list(3L, 3, "3", 0.3)), c("a", "b", "c", "d"))

schema <-  structType(structField("a", "integer"), structField("c", 
           "string"),structField("avg", "double"))
result <- SparkR::gapply( df, c("a", "c"),
             function(key, x) {
             #library(tsintermittent)
             y <- data.frame(key, crost(x$d), stringsAsFactors = FALSE)
  }, schema)
 head(result)

Ошибка: -

org.apache.spark.SparkException: R computation failed with
Error in compute(mode, partition, serializer, deserializer, keys[[i]],  : 
deserializer == "byte" is not TRUE
Calls: compute -> stopifnot
...