用List <double>预测

时间:2017-11-04 22:56:25

标签: java spark-dataframe apache-spark-mllib

我有一个来自libsvm文件的经过训练的RandomForestModel对象,现在想使用List<Double>作为特征来调用该模型的预测方法。如何将List<Double>转换为Java中的必要输入并查看预测的目标类?

据我所知,预测(...)接收JavaRDD<Vector>,但我不确定如何将List<Double>转换为。{/ p>

2 个答案:

答案 0 :(得分:1)

通过浏览docs,看起来predict也可以在Vector上呼叫List<Double>。您可以将列表转换为DenseVector数组,将double转换为new DenseVector(double_array)docs},然后执行this问题,然后执行{{1}} }。

答案 1 :(得分:1)

取决于数据的稀疏性,您可以使用SparseVectorDenseVector

编写从列表到矢量的map转换
int length = yourList.size();
double[] inputArray = new double[length];
yourList.toArray(inputArray);
Vector inputVector = new DenseVector(inputArray);