Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/scala/19.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_Scala Collections_Spark Graphx - Fatal编程技术网

Scala 为数组的每个键传递函数

Scala 为数组的每个键传递函数,scala,apache-spark,scala-collections,spark-graphx,Scala,Apache Spark,Scala Collections,Spark Graphx,我有一个这样的数组: val pairs: Array[(Int, ((VertexId, Seq[Int]), Int))] 这将生成以下输出: (11,((11,ArraySeq(2, 5, 4, 5)),1)) (11,((12,ArraySeq(7, 7, 8, 2)),1)) (11,((13,ArraySeq(5, 9, 8, 7)),1)) (1,((1,ArraySeq(1, 2, 3, 4)),1)) (1,((4,ArraySeq(1, 5, 1, 1)),1)) 我想

我有一个这样的数组:

val pairs: Array[(Int, ((VertexId, Seq[Int]), Int))] 
这将生成以下输出:

(11,((11,ArraySeq(2, 5, 4, 5)),1))
(11,((12,ArraySeq(7, 7, 8, 2)),1))
(11,((13,ArraySeq(5, 9, 8, 7)),1))
(1,((1,ArraySeq(1, 2, 3, 4)),1))
(1,((4,ArraySeq(1, 5, 1, 1)),1))
我想为每个
对建立一个图表。\u 1
。这意味着,例如,那些具有相同id(pairs.\u 1)的人将一起构建一个图。 我正在考虑向每个id传递一个图形构造函数。 我如何才能做到这一点?

您正在寻找处理每个组的函数

pairs groupBy {_._1} mapValues { groupOfPairs => doSomething(groupOfPairs) }

“为每对传递一个函数”是什么意思?请提供输入和所需输出的示例。@dcastro我刚刚更正了我的帖子。你能看一下吗?谢谢。你已经有了构建图表的功能了吗?你试过什么?你知道groupBy的事吗?@BenReich是的,我有这个功能。我将两个RDD连接在一起(顶点),并在它们之间构造一条边
groupBy
只执行我所知道的数组类型。谢谢您的回答。但我并不总是有11和1。我必须提出一个一般性的理由!这个数字(11、1等)如何影响接下来发生的事情?这有关系吗?这个数字是随机给出的,所以每次执行时我都会有两到三个不同的数字。具有相同编号的节点将在图形构造函数中处理。@OmarMasmoudi能否更新您的问题,并解释您希望为每对/每组对调用什么函数?现在还不清楚你想在这里做什么。另外,我可以不使用函数创建两个节点(只有一条边)的图吗?这意味着,每两个节点都有相同的编号,这两个节点将分别构建一个图。