2016-02-24 33 views
0

我正在嘗試在MLLib中使用漸變增強和隨機森林,就在本地。是否可以在Java中使用double [] []創建MLlib RDD <LabeledPoint>?

我有一些數據,我想傳入學習算法,以二維數組的形式來到我的學習算法。第一維度決定第二行。我也得到了相同長度的雙打單維數組中的每一行的響應。

當然有一種方法可以從這些變量創建一個RDD,所以我可以在本地運行算法?

回答

0

我當時可以做,但我希望有一個更好的方法最好:

public static JavaRDD<LabeledPoint> makeMeAnRDD(double[][] X, double[] y, JavaSparkContext context) 
{ 
    assert(X.length == y.length); 

    List<LabeledPoint> xList = new LinkedList<LabeledPoint>(); 

    // ivec <=> row number. 
    for (int ivec = 0; ivec < X.length; ivec++) 
    { 
     LabeledPoint x  = new LabeledPoint(y[ivec], Vectors.dense(X[ivec])); 
    } 

    return context.parallelize(xList); 
} 
相關問題