Scala 如何将Array[RDD[Row]]转换为SchemaRDD——或者——如何拆分SchemaRDD,其中的结果是SchemaRDDs?
我想在MLlib中使用管道的实现。要使用管道,应该有一系列要传递到管道的LabeledDocument(SchemaRDD) 我创建SchemaRDD如下:Scala 如何将Array[RDD[Row]]转换为SchemaRDD——或者——如何拆分SchemaRDD,其中的结果是SchemaRDDs?,scala,split,apache-spark,rdd,Scala,Split,Apache Spark,Rdd,我想在MLlib中使用管道的实现。要使用管道,应该有一系列要传递到管道的LabeledDocument(SchemaRDD) 我创建SchemaRDD如下: val data = sc.textFile("/test.csv"); val parsedData = data.map { line => val parts = line.split(',') LabeledPoint(parts(0).toDouble, Vectors.dense(parts
val data = sc.textFile("/test.csv");
val parsedData = data.map { line =>
val parts = line.split(',')
LabeledPoint(parts(0).toDouble, Vectors.dense(parts.tail))
}.cache()
val rddSchema = parsedData.toSchemaRDD;
我想将新的rddSchema分为培训(80%)和测试(20%)。如果我使用randomSplit,它将返回一个数组[RDD[Row]],而不是SchemaRDD
问题:如何将数组[RDD[Row]]转换为SchemaRDD
--或者--
如何拆分SchemaRDD,其中的结果是SchemaRDDs
我很感谢你的帮助。我知道这很旧,但你试过了吗:
val splits = parsedData.randomSplit(Array(0.6, 0.4), seed = 11L)
val training = splits(0)
val test = splits(1)