Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
OpenDocCN
think-comp-2e-zh
提交
43081e4a
T
think-comp-2e-zh
项目概览
OpenDocCN
/
think-comp-2e-zh
10 个月 前同步成功
通知
0
Star
16
Fork
7
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
T
think-comp-2e-zh
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
前往新版Gitcode,体验更适合开发者的 AI 搜索 >>
提交
43081e4a
编写于
11月 01, 2017
作者:
W
wizardforcel
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
3.5
上级
c87e91f0
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
63 addition
and
0 deletion
+63
-0
3.md
3.md
+63
-0
未找到文件。
3.md
浏览文件 @
43081e4a
...
...
@@ -141,3 +141,66 @@ def rewire(G, p):
这个函数不按照 Watts 和 Strogatz 指定的顺序考虑边缘,但它似乎不会影响结果。
图(?)展示了
`n = 20`
,
`k = 4`
和范围内
`p`
值的 WS 图。当
`p = 0`
时,该图是环格。 当
`p = 1`
时,它是完全随机的。我们将看到,有趣的事情发生在两者之间。
## 3.5 群聚性
下一步是计算群聚系数,它量化了节点形成集团的趋势。 集团是一组完全连接的节点;也就是说,在集团中的所有节点对之间都存在边。
假设一个特定的节点
`u`
具有
`k`
个邻居。如果所有的邻居都相互连接,则会有
`k(k-1)/2`
个边。 实际存在的这些边的比例是
`u`
的局部群聚系数,表示为
`Cu`
。它被称为“系数”,因为它总是在 0 和 1 之间。
如果我们计算所有节点上的
`Cu`
平均值,我们得到“网络平均群聚系数”,表示为
`C`
。
这是一个计算它的函数。
```
py
def
node_clustering
(
G
,
u
):
neighbors
=
G
[
u
]
k
=
len
(
neighbors
)
if
k
<
2
:
return
0
total
=
k
*
(
k
-
1
)
/
2
exist
=
0
for
v
,
w
in
all_pairs
(
neighbors
):
if
G
.
has_edge
(
v
,
w
):
exist
+=
1
return
exist
/
total
```
同样,我使用
`G [u]`
,它返回一个字典,键是节点的邻居。如果节点的邻居少于两个,则群聚系数未定义,但为简便起见,
`node_clustering`
返回 0。
否则,我们计算邻居之间的可能的边数量,
`total`
,然后计算实际存在的边数量。结果是存在的所有边的比例。
我们可以这样测试函数:
```
py
>>>
lattice
=
make_ring_lattice
(
10
,
4
)
>>>
node_clustering
(
lattice
,
1
)
0.5
```
在
`k=4`
的环格中,每个节点的群聚系数是
`0.5`
(如果你不相信,可以看看图(?))。
现在我们可以像这样计算网络平均群聚系数:
```
py
def
clustering_coefficient
(
G
):
cc
=
np
.
mean
([
node_clustering
(
G
,
node
)
for
node
in
G
])
return
cc
```
`np.mean`
是个 NumPy 函数,计算列表或数组中元素的均值。
然后我们可以像这样测试:
```
py
>>>
clustering_coefficient
(
lattice
)
0.5
```
这个图中,所有节点的局部群聚系数是 0.5,所以节点的平均值是 0.5。当然,我们期望这个值和 WS 图不同。
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录