我有一个文本文件如下:
1 3
2 5
3 6
4 5
5 4
6 1
7 2
上面的文件表示无向图中的边。我想删除图中的重复边。在上面给出的例子中,我想删除 4,5 or 5,4
因为它们在图形中表示相同的边,因此会导致重复。我正在尝试使用 Graphstream
使用 GraphX
apachespark中的库。但是由于存在重复节点,如上所述,它给出了如下错误
org.graphstream.graph.EdgeRejectedException: Edge 4[5--4] was rejected by node 5
从文本文件中删除这些副本的最佳方法是什么?
1条答案
按热度按时间14ifxucb1#
你可以用
convertToCanonicalEdges
方法来自GraphOps
. 它将双向边转换为单向边。
重写边的顶点ID,使srcids小于dstids,并合并复制的边。
就你而言:
结果如下: