Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/scala/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Scala 如何将Array[RDD[Row]]转换为SchemaRDD——或者——如何拆分SchemaRDD,其中的结果是SchemaRDDs?_Scala_Split_Apache Spark_Rdd - Fatal编程技术网

Scala 如何将Array[RDD[Row]]转换为SchemaRDD——或者——如何拆分SchemaRDD,其中的结果是SchemaRDDs?

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

我想在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.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)