我在NetworkX中有一个有向图。边的权重从0到1不等,代表了它们出现的概率。网络连通性非常高,所以我想修剪边缘,使每个节点只保留最高概率的节点。
我不知道如何遍历每个节点并在图中仅保留最高加权
以下是我想要实现的示例。
如果一个节点有两条边,且它们都是最高权重的,我希望保留它们两个。
我不知道如何遍历每个节点并在图中仅保留最高加权
in_edges
。是否有一种networkx函数可以让我们做到这一点?以下是我想要实现的示例。
Nodes:
A, B, C, D
Edges:
A->B, weight=1.0
A->C, weight=1.0
A->D, weight=0.5
B->C, weight=0.9
B->D, weight=0.8
C->D, weight=0.9
Final Result Wanted:
A->B, weight=1.0
A->C, weight=1.0
C->D, weight=0.9
如果一个节点有两条边,且它们都是最高权重的,我希望保留它们两个。
weight >=0.9
)。你会发现B->C没有被包括进去,因为有一条从A到C的边权重更高。相反,我正在寻找进入给定节点的最高价值边(或边)。也许我需要编辑问题以使其更清晰? - ericmjl