【发布时间】:2016-10-18 22:43:50
【问题描述】:
我正在努力让一个简单的 sparkR 示例启动并运行,但无法让它工作。我要做的就是获取一个列表,将其并行化,然后在 SparkR 中运行一个函数。我还没有找到一个简单的例子来说明在 spark 1.6 中执行此操作的方法——似乎有很多方法可以做到这一点,但它们似乎都不起作用。我正在尝试在 sparkR 控制台中运行它:
fxntest<- function(i){
m = matrix(runif(4000*4000),4000)
return(system.time(m %*% m))
}
a<-c(1,1,1,1,1,3)
b<-as.list(a)
sdf <- createDataFrame(sqlContext, b)
testtimes <- lapply(sdf, fxntest)
testtimelist <- collect(testtimes)
testtimelist
这是我在调用 lapply 时遇到的错误:
Error in as.list.default(X) :
no method for coercing this S4 class to a vector
我正在寻找的是一个非常简单的例子,它可以让它工作——我已经大量使用了 pyspark,但无法使用 R 来实现它。
【问题讨论】:
-
错误似乎在
lapply中。那是在做什么?它根本没有使用i -
我只是希望该功能在不同的工作人员之间并行运行——我知道我忽略了“i”。
标签: r apache-spark spark-dataframe sparkr