【发布时间】:2020-08-11 00:03:25
【问题描述】:
在我的图中,节点有一个属性告诉我节点的类型可以是 1 或 2。
G=nx.Graph()
G.add_node('N1',n_type=1)
G.add_node('N2',n_type=1)
G.add_node('N3',n_type=2)
G.add_edges_from([('N3','N1'),('N3','N2')])
如果我使用 NetworkX 中的 nx.average_neighbor_degree(G) 函数,我会得到以下结果。
{'N1': 2.0, 'N2': 2.0, 'N3': 1.0}
但是,我想仅考虑一种类型的节点来获得平均邻居度。例如,该属性取值为 1 时的平均相邻度应该是:
{'N1': 0.0, 'N2': 0.0, 'N3': 1.0}
这是因为节点 N3 是唯一具有属性 n_type=1 的邻居的节点,并且其邻居的平均值为 Degree(N1)+Degree(N2)/2 = 1+1/2 = 1
有什么建议吗?
【问题讨论】: