average_neighbor_degree#

average_neighbor_degree(G, source='out', target='out', nodes=None, weight=None)[源代码]#

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

在无向图中,邻居 N(i) 个节点 i 包含连接到的节点 i 领先一步。

对于有向图, N(i) 根据参数定义 source

  • 如果来源为‘in’,则 N(i) 由节点的前置节点组成 i

  • 如果源为‘out’,则 N(i) 由节点的后继节点组成 i

  • 如果来源为‘In+Out’,则 N(i) 既是前辈,也是后继者。

节点的平均邻域度 i

\[k n n,i=\frac 1 n(i)\ sum j \ i n n(i)k u j\]

哪里 N(i) 是节点的邻居吗 ik_j 是节点的度数 j 它属于哪一个 N(i) 。对于加权图,可以定义类似的度量 [1],

\[k n n,i n(i)w i j k u j\]

在哪里? s_i 是节点的加权程度 iw_{{ij}} 是连接边缘的重量 ijN(i) 是节点的邻居 i .

参数
G网络X图表
source字符串(“in”|“out”|“in+out”),可选(默认为“out”)

仅限有向图。使用“in”或“out”-源节点的邻居。

target字符串(“in”|“out”|“in+out”),可选(默认为“out”)

仅限有向图。对目标节点使用“in”或“out”度。

nodes列表或可迭代,可选(默认为G.Nodes)

仅计算指定节点的邻居度数。

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

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

返回
D:DICT

以节点为关键字的字典,以其相邻节点的平均程度为关键字。

加薪
NetworkXError

如果有任何一个 sourcetarget 不是‘in’、‘out’或‘in+out’之一。如果有任何一个 sourcetarget 是为无向图传递的。

工具书类

1

A.Barrat、M.Barth_Lemy、R.Pastor Satorras和A.Vespignani,“复杂加权网络的架构”。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: 0.0, 2: 1.0, 3: 1.0}
>>> nx.average_neighbor_degree(G, source="out", target="out")
{0: 1.0, 1: 1.0, 2: 0.0, 3: 0.0}