访问随机林sparkR中的概率对象列
在斯巴克,我有这样的东西访问随机林sparkR中的概率对象列,r,sparkr,R,Sparkr,在斯巴克,我有这样的东西 rf <- spark.randomForest(train, formula, type = "classification") pred <- predict(rf,test) 输出是您可以在图像中看到的内容 如何获得概率值?您必须使用函数sparkR.callJMethod为每个对象调用名为values的Java方法 t(sapply(collect(select(pred, "probability"))$probability,
rf <- spark.randomForest(train, formula, type = "classification")
pred <- predict(rf,test)
输出是您可以在图像中看到的内容
如何获得概率值?您必须使用函数
sparkR.callJMethod
为每个对象调用名为values
的Java方法
t(sapply(collect(select(pred, "probability"))$probability,
FUN = function(x) sparkR.callJMethod(x, "values")))
下面是使用Iris数据集的完整示例。目标值为物种
,有3个级别,共有150个数据点
df <- createDataFrame(iris)
model <- spark.randomForest(df, Species ~ ., type = "classification")
summary(model)
predictions <- predict(model, df)
local_prob <- collect(select(predictions, "probability"))$probability
t(sapply(local_prob, FUN = function(x) sparkR.callJMethod(x, "values")))
df <- createDataFrame(iris)
model <- spark.randomForest(df, Species ~ ., type = "classification")
summary(model)
predictions <- predict(model, df)
local_prob <- collect(select(predictions, "probability"))$probability
t(sapply(local_prob, FUN = function(x) sparkR.callJMethod(x, "values")))
[,1] [,2] [,3]
[1,] 0 0 1
[2,] 0 0 1
[3,] 0 0 1
...
[148,] 0 1 0
[149,] 0.05 0.95 0
[150,] 0.01805556 0.9819444 0