我有一个看起来像这样的图:
g.vertices.show()
+---+
| id|
+---+
| 1|
| 2|
| 3|
| 4|
+---+
g.edges.show()
+---+----+
|src| dst|
+---+----+
| 1| 2|
| 2| 3|
| 3| 4|
| 4| 1|
| 4|null|
+---+----+
现在您可以看到vectice 4
有两个边,一个到1
,另一个到null
。这个想法是null
代表悬空的边缘。我想做的是将沿悬空边缘分布的权重随机分配回图中。当我调用g.pageRank(resetProbability=0.15, tol=0.01)
方法时,它显然会因scala.MatchError: [4,null,[4,null]]
而失败,因为它无法处理null
。有没有一种方法可以使pagerank
表现出我想要的行为? “实际”图要大得多,所以我宁愿不重新实现pagerank。