1

1)我正在尝试使用 MLlib Random Forest 。我的最终输出应该有 2 列

id, predicted_value 
1,  0.5 
2,  0.4 

我的特征集是训练数据和评分 --- train , score 但是当我训练和评分时,我删除了 id 字段,因为它不能用作特征,因为它对于每一行都是唯一的并且在预测方面没有智能,现在我得到了预测的分数

我的得分输出看起来像

predicted_value 
0.5 
0.4 

但我想把它绑回 id

我在单独的 DStream 中有 id 字段,在单独的 DStream 中有 predict_value 字段。如何将它相互绑定,我没有任何列字段可以进行连接。

现在我该怎么把它系回来。例如 R 有一个函数 cbind 可以绑定来自不同数据帧的 2 列

x<-data.frame(cbind(testIds,p$p1)) 

是否有可能或任何替代方案?

2)我正在使用 MLlib 随机森林模型来预测使用火花流。最后,我想将特征 Dstream 和预测 Dstream 结合在一起进行进一步的下游处理。我怎样才能做到这一点?

提前致谢。

4

1 回答 1

0

您可以使用DStream.transform和预测:

 dstream.transform(rdd =>  {
   val predictions = model.predict(rdd)
   rdd.zip(predictions)
 })
于 2017-03-19T12:36:06.527 回答