在使用 import org.apache.spark.ml.feature.VectorAssembler 转换特征后,想要放入 import org.apache.spark.mllib.classification.SVMWithSGD 去训练的时候出现错误:

Caused by: java.lang.ClassCastException: org.apache.spark.ml.linalg.DenseVector cannot be cast to org.apache.spark.ml.linalg.SparseVector

修改如下:

val trainDataFrame = dataframe.rdd.map(r => LabeledPoint(
  r.getAs[Double]("label"),
org.apache.spark.mllib.linalg.Vectors.fromML(r.getAs[org.apache.spark.ml.linalg.SparseVector]("features").toDense)

))

相关文章:

  • 2021-06-02
  • 2021-05-08
  • 2021-07-16
  • 2021-12-02
  • 2021-10-17
  • 2021-08-23
  • 2021-11-19
猜你喜欢
  • 2022-12-23
  • 2022-12-23
  • 2021-07-12
  • 2021-08-28
  • 2022-12-23
  • 2022-12-23
相关资源
相似解决方案