Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/video/2.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中将元组简化为元组的元组_Scala_Apache Spark - Fatal编程技术网

如何在scala中将元组简化为元组的元组

如何在scala中将元组简化为元组的元组,scala,apache-spark,Scala,Apache Spark,我有RDD类型的行 (a,(b,c,d)) (a,(e,f,g)) (a,(b,c,d),(e,f,g)). 我试图通过键来减少它,以便它产生类型为的行 (a,(b,c,d)) (a,(e,f,g)) (a,(b,c,d),(e,f,g)). 但我在使用时遇到了一个错误: val redcd = mapd.reduceByKey((_,_)) 我该怎么做?如果您有RDDas scala> mapd.foreach(println) (a,(b,c,d)) (a,(e,f,

我有RDD类型的行

(a,(b,c,d))
(a,(e,f,g)) 
(a,(b,c,d),(e,f,g)). 
我试图通过键来减少它,以便它产生类型为的行

(a,(b,c,d))
(a,(e,f,g)) 
(a,(b,c,d),(e,f,g)). 
但我在使用时遇到了一个错误:

val redcd = mapd.reduceByKey((_,_))

我该怎么做?

如果您有
RDD
as

scala> mapd.foreach(println)
(a,(b,c,d))
(a,(e,f,g))
(b,(b,c,d))
然后做

val redcd = mapd.groupBy(_._1).mapValues(x => x.map(_._2).toList)
我会给你

scala> redcd.foreach(println)
(b,List((b,c,d)))
(a,List((b,c,d), (e,f,g)))
现在,如果您希望它的格式有问题,您可以这样做

val redcd = mapd.groupBy(_._1).mapValues(x => x.map(_._2).toList.mkString(", "))
这将产生

scala> redcd.foreach(println)
(a,(b,c,d), (e,f,g))
(b,(b,c,d))

我希望答案有帮助

有什么错误?