Как сопоставить RDD прецедентного класса LabeledPoint (метки, функция вектора)

голоса
27

Как сопоставить RDD прецедентного класса к LabeledPoint (ярлык, особенность вектор).

Это РДД в случае класса экзамена (х: распашные у: Double):

Ds (1.0,6.0)

Ds (2.0,8.0)

Ds (3.0,10.0)

Ds (3.0,10.0)

DS (4.0,12.0)

Ds (5.0,14.0)

Пробовал делать это -

     val parsedData = aRDD.map(row =>
     new LabeledPoint(
     row._1,
     Vectors.dense(row._2))

Получение ошибки «значение _1 не является членом main.scala.spark.Q1Partb.Q1.Exam» в row._1 и row._2

и это -

          val parsedData = aRDD.map{line => 
          val Array(rawLabel, rawfeatures) = line.split(',')
          val features = rawfeatures) .split(' ').map(_.toDouble)
          LabeledPoint(rawLabel.toDouble, Vectors.dense(features))}

Получение ошибки «рекурсивное значение х типа $ 4 потребностей» для rawLabel и «значение раскола не является членом main.scala.spark.Q1Partb.Q1.ds» для line.split ( «»)

Задан 03/05/2017 в 22:53
пользователем
На других языках...                            


2 ответов

голоса
1

Если у вас есть RDD [экзамен] вы должны быть в состоянии написать

val parsedData = aRDD.map(exam => LabeledPoint(exam.x, Vectors.dense(exam.y))
Ответил 04/05/2017 в 04:59
источник пользователем

голоса
1

Я имел этот вопрос, потому что мое имя переменной было принято с помощью функции.

Так private val Seq(transaction, transaction2) = insertTx(...

стал

private val Seq(transaction1, transaction2) = insertTx(...

с сделкой является виновником.

Ответил 09/08/2017 в 20:15
источник пользователем

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more