0

我有包含用分号分隔的记录的 csv 文件。每行是一个记录。每条线都包含图的边缘信息。这意味着一行如下所示:

节点_X;节点_Y;5

它被解释为权重为 5 的节点 x 和 y 之间的边或链接。我的映射器得到这个输入。现在我想要实现的是使用节点聚合信息。

以下示例说明了我的场景:

节点_X;节点_Y;5

节点_X;节点_Z;10

节点_X;节点_A;60

节点_Y;节点_A;20

那么节点的结果应该是:

节点_X;75; 节点_Y;25; 节点_A;80

我想收集所有不同的节点,并将它们与其他节点的权重之和作为权重。

在我的映射器中,我可以读取边缘信息:

节点_X;节点_A;60

但是我怎样才能从这条线上为我的减速器制作两个键呢?它应该是这样的

context.write(Node_X,60);

context.write(Node_A,60);

我怎样才能做到这一点?

谢谢!

PS:边缘是无向的。

4

1 回答 1

3

它应该是这样的

context.write(Node_X,60);

context.write(Node_A,60);

假设您在询问之前没有尝试过,那将起作用。

于 2012-06-08T12:51:47.407 回答