错误:无法找到功能" includePackage"

时间:2016-02-10 06:39:40

标签: r apache-spark machine-learning sparkr

我正在尝试在SparkR上执行随机森林算法,并安装了Spark 1.5.1。我没有清楚的想法,为什么我得到错误 -

  Error: could not find function "includePackage"

此外,即使我在代码中使用mapPartitions函数,我也会收到错误 -

  Error: could not find function "mapPartitions"

请找到以下代码:

rdd <- SparkR:::textFile(sc, "http://localhost:50070/explorer.html#/Datasets/Datasets/iris.csv",5) 

includePackage(sc,randomForest) 

rf <- mapPartitions(rdd, function(input) {
 ## my function code for RF
}

2 个答案:

答案 0 :(得分:1)

这更像是一个评论和一个交叉问题而不是一个答案(由于声誉而不允许评论)但只是为了更进一步,如果我们使用collect方法将rdd转换回R数据帧,如果数据太大就不会产生效果,在R中执行需要很长时间。

这也意味着我们可以使用任何R包,例如markovChain或使用相同方法的神经网络。

答案 1 :(得分:0)

请检查sparkR http://spark.apache.org/docs/latest/api/R/index.html中可能使用的功能 这不包括函数mapPartitions()includePackage()

#For reading csv in sparkR

sparkRdf <- read.df(sqlContext, "./nycflights13.csv", 
                    "com.databricks.spark.csv", header="true")

#Possible way to use `randomForest` is to convert the `sparkR` data frame to `R` data frame
Rdf <- collect(sparkRdf) 

#compute as usual in `R` code
>install.packages("randomForest") 
>library(rainForest)
......
#convert back to sparkRdf 
sparkRdf <- createDataFrame(sqlContext, Rdf)