2017-08-25 9 views
0

私のプログラムはSpark.MLを使用しています。データフレームにロジスティック回帰を使用しています。しかし、LogisticRegressionWithLBFGSも使用したいので、データフレームをLabeledPointに変換したいと思います。Dataframeをラベル付きポイントに変換できません

次のコードは私にエラー

val model = new LogisticRegressionWithLBFGS().run(dff3.rdd.map(row=>LabeledPoint(row.getAs[Double]("label"),org.apache.spark.mllib.linalg.SparseVector.fromML(row.getAs[org.apache.spark.ml.linalg.SparseVector]("features"))))) 

エラー得られます。

org.apache.spark.ml.linalg.DenseVector cannot be cast to org.apache.spark.ml.linalg.SparseVector 

をだから私はDenseVectorにスパーセベクターを変更しますが、それは動作しません:

org.apache.spark.ml.linalg.SparseVector cannot be cast to org.apache.spark.ml.linalg.DenseVector 
+2

代わりにorg.apache.spark.mllib.linalg.Vectors.fromMLを使用しようとしましたか? –

+0

完璧に働いて、ありがとう! – Tiffany

+0

@MichelLemay下記の質問にお答えください:) –

答えて

0

あなたが試してみました代わりにorg.apache.spark.mllib.linalg.Vectors.fromMLを使用しますか?

注:この回答は、コメントからコピー貼り付けで閉じられるようにしています。

関連する問題