[실습] 밀도 :: Python 네트워크 분석 - mindscale
Skip to content

[실습] 밀도

그래프의 밀도(density)란 (에지 수) / (가능한 에지의 수)를 말한다. 예를 들어 4개의 노드와 3개의 에지가 있는 그래프를 생각해보자. 이 그래프가 방향이 있을 경우 12개의 에지가 가능하고 따라서 밀도는 3/12=0.25이다. 또 방향이 없을 경우에는 절반인 6개의 에지만 가능하므로 밀도는 0.5가 된다.

import networkx as nx

에르되시-레니 그래프를 생성한다. 노드의 수는 30개이고, 가능한 에지 중에 10%만 무작위로 포함한다.

G = nx.erdos_renyi_graph(30, 0.1)
nx.draw(G)

이 그래프의 밀도를 구하면 대략 0.1 정도가 된다.

nx.density(G)
0.10114942528735632

깃헙 데이터를 불러온다.

github = nx.read_adjlist('github.adj')

밀도를 구해본다.

nx.density(github)
4.564321943450266e-05