刘大猫. 2020-11-06 17:24 采纳率: 50%
浏览 52

java版 使用spark机器学习包进行求平均数遇到类型转换出错

问题:java版 使用spark机器学习包进行求平均数遇到:  java.lang.Double cannot be cast to org.apache.spark.mllib.linalg.Vector

//读取数据
        Dataset<Row> jdbcDF = spark.read()
                .option("url",url)
                .option("dbtable", table_name)
                .option("driver", "com.mysql.jdbc.Driver")
                .option("user",user)
                .option("password", password)
                .format("jdbc")
                .load();

JavaRDD<Vector> vectorJavaRDD = jdbcDF.toJavaRDD().mapPartitions(new FlatMapFunction<Iterator<Row>, Vector>() {
            public Iterator<Vector> call(Iterator<Row> iterator) throws Exception {

                List<Vector> results = new ArrayList<Vector>();

                while (iterator.hasNext()) {
                    Row row = iterator.next();
                    Vector vector = (Vector) row.getAs("temperature1");
                    results.add(new org.apache.spark.mllib.linalg.DenseVector(vector.toArray()));
                }

                return results.iterator();
            }
        });

        //  summary
        MultivariateStatisticalSummary summary = Statistics.colStats(vectorJavaRDD.rdd());
        Vector max = summary.max();
        System.out.println("max: "+ Arrays.toString(max.toArray()));
        System.out.println("min: "+Arrays.toString(summary.min().toArray()));
        System.out.println("count:" +summary.count());
        System.out.println("mean: "+Arrays.toString(summary.mean().toArray()));

问题是这行运行报错: Vector vector = (Vector) row.getAs("temperature1");

运行报错:java.lang.Double  cannot be cast to org.apache.spark.mllib.linalg.Vector

  • 写回答

1条回答 默认 最新

      报告相同问题?

      相关推荐 更多相似问题

      悬赏问题

      • ¥60 iPad应用程序UPV打开Windows系统相同应用下的模型文件
      • ¥15 MySQL行转动态列的问题
      • ¥15 通过STM32F4实现智能清洁小车,要求用到三个以上传感器
      • ¥15 perl代码解释说明
      • ¥15 列举 五阶幻方 有多少种
      • ¥15 请教一下能人在VS中调用MATLAB绘制动态驻波
      • ¥15 VB.NET如何调用Microsoft Excel?(WPS存在时)
      • ¥15 KUKA机器人EtherNetIP通讯配置教程
      • ¥15 VB6.0如何模拟键盘组合按键
      • ¥15 python怎么替换这个word里边内容