2017-02-26 38 views
-2

我只想在使用JavaRDD時做一些2D矩陣操作,並查看此鏈接https://spark.apache.org/docs/latest/mllib-data-types.html。我試着做與這裏給出的完全相同的示例代碼。但是eclipse似乎並沒有首先識別mllib。這裏是我的代碼片段(與上面的鏈接相同)在apache spark 2.0.2中使用mllib和「無法解析導入org.apache.spark.mllib」錯誤

import org.apache.spark.mllib.linalg.Vector; 
    import org.apache.spark.mllib.regression.LabeledPoint; 
    import org.apache.spark.mllib.regression.LabeledPoint; 
    import org.apache.spark.mllib.util.MLUtils; 
    import org.apache.spark.mllib.linalg.Matrix; 
    import org.apache.spark.mllib.linalg.Matrices; 

    JavaRDD<Vector> rows = ... // a JavaRDD of local vectors 
          // Create a RowMatrix from an JavaRDD<Vector>. 
    RowMatrix mat = new RowMatrix(rows.rdd()); 

    // Get its size. 
    long m = mat.numRows(); 
    long n = mat.numCols(); 

    // QR decomposition 
    QRDecomposition<RowMatrix, Matrix> result = mat.tallSkinnyQR(true); 

我正在使用Spark 2.0.2。我哪裏錯了?我們需要任何Maven依賴嗎?我檢查了我的spark主目錄,並且我的spark目錄中有mllib目錄和mllib-local目錄。

回答

0

檢查您的pom.xml以查看是否存在spark-mllib依賴項。如果沒有,就從這裏正確的版本:https://mvnrepository.com/artifact/org.apache.spark/spark-mllib_2.11

在我回答點,最新的版本是:

<!-- https://mvnrepository.com/artifact/org.apache.spark/spark-mllib_2.11 --> 
<dependency> 
    <groupId>org.apache.spark</groupId> 
    <artifactId>spark-mllib_2.11</artifactId> 
    <version>2.1.0</version> 
</dependency> 
相關問題