首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将Rdd[Vector]转换为Rdd[Double]

将Rdd[Vector]转换为Rdd[Double]
EN

Stack Overflow用户
提问于 2015-10-05 09:28:00
回答 2查看 2.5K关注 0票数 0

如何将csv转换为RddDouble?在这一行中,我有一个错误:无法应用于(org.apache.spark.rdd.RDDUnit):

代码语言:javascript
复制
val kd = new KernelDensity().setSample(rows) 

我的完整代码在这里:

代码语言:javascript
复制
   import org.apache.spark.mllib.linalg.Vectors
    import org.apache.spark.mllib.linalg.distributed.RowMatrix
    import org.apache.spark.mllib.stat.KernelDensity
    import org.apache.spark.rdd.RDD
    import org.apache.spark.{SparkContext, SparkConf}

class KdeAnalysis {
  val conf = new SparkConf().setAppName("sample").setMaster("local")
  val sc = new SparkContext(conf)

  val DATAFILE: String = "C:\\Users\\ajohn\\Desktop\\spark_R\\data\\mass_cytometry\\mass.csv"
  val rows = sc.textFile(DATAFILE).map {
    line => val values = line.split(',').map(_.toDouble)
      Vectors.dense(values)
  }.cache()



  // Construct the density estimator with the sample data and a standard deviation for the Gaussian
  // kernels
  val rdd : RDD[Double] = sc.parallelize(rows)
  val kd = new KernelDensity().setSample(rdd)
    .setBandwidth(3.0)

  // Find density estimates for the given values
  val densities = kd.estimate(Array(-1.0, 2.0, 5.0))
}
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-10-05 09:47:14

由于rows是一个RDD[org.apache.spark.mllib.linalg.Vector],下面的行无法工作:

代码语言:javascript
复制
val rdd : RDD[Double] = sc.parallelize(rows)

parallelize预计Seq[T]RDD不是Seq

即使这个部分像你期望的那样起作用,你的输入也是完全错误的。KernelDensity.setSample的一个正确论点是RDD[Double]JavaRDD[java.lang.Double]。目前看来,它不支持多元数据。

关于瓷砖上的一个问题,您可以flatMap

代码语言:javascript
复制
rows.flatMap(_.toArray)

或者创建rows时更好

代码语言:javascript
复制
val rows = sc.textFile(DATAFILE).flatMap(_.split(',').map(_.toDouble)).cache()

但我怀疑这真的是你需要的。

票数 2
EN

Stack Overflow用户

发布于 2015-10-05 10:02:58

已经准备好了这段代码,请评估它是否能帮助您走出->

代码语言:javascript
复制
val doubleRDD = rows.map(_.toArray).flatMap(x => x)
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/32945198

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档