Apache spark 如何在控制台中输出RDD的内容

Apache spark 如何在控制台中输出RDD的内容,apache-spark,Apache Spark,例如,如何输出行或数据的内容?这是我得到的结果点:[Lbreeze.linalg.Vector;@3bfc6a5e你问错了问题 你的问题不是如何获取内容——你已经用RDD.takeSample做过了。你还知道如何将其打印到标准输出,否则你就不会有[Lbreeze.linalg.Vector;@3bfc6a5e]这样的东西 您真正需要的是一种可读的格式。在大多数情况下,kPoints.map\u.toString应该可以做到这一点。如果没有,您需要手动编写一个函数来做到这一点。我想您可以尝试将Ve

例如,如何输出行或数据的内容?这是我得到的结果点:[Lbreeze.linalg.Vector;@3bfc6a5e

你问错了问题

你的问题不是如何获取内容——你已经用RDD.takeSample做过了。你还知道如何将其打印到标准输出,否则你就不会有[Lbreeze.linalg.Vector;@3bfc6a5e]这样的东西

您真正需要的是一种可读的格式。在大多数情况下,kPoints.map\u.toString应该可以做到这一点。如果没有,您需要手动编写一个函数来做到这一点。我想您可以尝试将Vector转换为Array[double],然后调用toString


而且:检查向量的值是没有意义的,为什么不使用一些统计方法来观察呢?

对不起!我是新来的,我不知道如何在网站上发布问题。我想知道数据的真实情况,我如何才能将其打印到控制台?@hudeqi kPoints.map\uu.toString.foreachprintln
val sparkConf = new SparkConf().setAppName("SparkKMeans")
val sc = new SparkContext(sparkConf)
val lines = sc.textFile(args(0))
val data = lines.map(parseVector _).cache()
val K = args(1).toInt
val convergeDist = args(2).toDouble
val kPoints = data.takeSample(withReplacement = false, K, 42).toArray