当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python NetworkX average_neighbor_degree用法及代码示例


本文简要介绍 networkx.algorithms.assortativity.average_neighbor_degree 的用法。

用法:

average_neighbor_degree(G, source='out', target='out', nodes=None, weight=None)

返回每个节点的邻域平均度。

节点i的平均邻域度为

其中 N(i) 是节点 i 的邻居,k_j 是属于 N(i) 的节点 j 的度数。对于加权图,可以定义类似的度量[1],

其中s_i是节点i的加权度,w_{ij}是连接ij的边的权重,N(i)是节点i的邻居。

参数

GNetworkX 图
source字符串(“in”|”out”|”in+out”)

仅限有向图。使用 “in”- 或 “out”-degree 作为源节点。

target字符串(“in”|”out”|”in+out”)

仅限有向图。使用“in”- 或“out”-degree 作为目标节点。

nodes列表或可迭代,可选

计算指定节点的邻居度。默认为图中的所有节点。

weight字符串或无,可选(默认=无)

保存用作权重的数值的边属性。如果没有,则每条边的权重为 1。

返回

d: 字典

由具有平均邻居度值的节点键入的字典。

抛出

NetworkXError

如果 sourcetarget 不是 ‘in’, ‘out’ 之一,或“in+out”。如果为无向图传递了sourcetarget

注意

对于有向图,您还可以通过传递关键字参数来指定度数或out-degree。

参考

1

A. Barrat, M. Barthélemy, R. Pastor-Satorras, and A. Vespignani, “The architecture of complex weighted networks”. PNAS 101 (11): 3747-3752 (2004).

例子

>>> G = nx.path_graph(4)
>>> G.edges[0, 1]["weight"] = 5
>>> G.edges[2, 3]["weight"] = 3
>>> nx.average_neighbor_degree(G)
{0: 2.0, 1: 1.5, 2: 1.5, 3: 2.0}
>>> nx.average_neighbor_degree(G, weight="weight")
{0: 2.0, 1: 1.1666666666666667, 2: 1.25, 3: 2.0}
>>> G = nx.DiGraph()
>>> nx.add_path(G, [0, 1, 2, 3])
>>> nx.average_neighbor_degree(G, source="in", target="in")
{0: 0.0, 1: 1.0, 2: 1.0, 3: 0.0}
>>> nx.average_neighbor_degree(G, source="out", target="out")
{0: 1.0, 1: 1.0, 2: 0.0, 3: 0.0}

相关用法


注:本文由纯净天空筛选整理自networkx.org大神的英文原创作品 networkx.algorithms.assortativity.average_neighbor_degree。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。