Как исправить "java.lang.Integer не может быть приведен к java.lang.Double" Ошибка в Spark (Scala)? - PullRequest
0 голосов
/ 25 марта 2019

У меня есть 2 столбца (1 int и 1 double) фрейма данных "fit_comparison", с прогнозируемыми значениями и результатами линейной регрессии.

Я использовал следующий код для получения метрик регрессии:

val rm = new RegressionMetrics(
  fit_comparison.rdd.map(x =>
  (x(0).asInstanceOf[Double], x(1).asInstanceOf[Double])))

Когда я пытаюсь получить конкретные показатели регрессии, как показано ниже, я получаю сообщение об ошибке "java.lang.Integer не может быть в случае java.lang.Double".

println("MSE: " + rm.meanSquaredError)

Должен ли я сначалапреобразовать первый столбец "fit_comparison" в двойной?

Любая помощь приветствуется, спасибо,

1 Ответ

4 голосов
/ 25 марта 2019

Вы можете попробовать это:

val rm = new RegressionMetrics
(fit_comparison.rdd.map(x =>
   (x(0).asInstanceOf[Int].toDouble, 
    x(1).asInstanceOf[Int].toDouble)))
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...