我有一个2列(1个整数和1个双精度)数据框“ 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”的第一列转换为双精度吗?
感谢您的帮助,
答案 0 :(得分:4)
您可以尝试以下方法:
val rm = new RegressionMetrics
(fit_comparison.rdd.map(x =>
(x(0).asInstanceOf[Int].toDouble,
x(1).asInstanceOf[Int].toDouble)))