2

Rを使用してグラフの巨大コンポーネントの隣接行列を抽出したいと思います.

たとえば、Erdos-Renyi g(n,p) を作成できます。

n = 100
p = 1.5/n
g = erdos.renyi.game(n, p)
coords = layout.fruchterman.reingold(g)
plot(g, layout=coords, vertex.size = 3, vertex.label=NA)

# Get the components of an undirected graph
cl = clusters(g)

# How many components?
cl$no           

# How big are these (the first row is size, the second is the number of components of that size)?
table(cl$csize) 

cl$membership
# Get the giant component
nodes = which(cl$membership == which.max(cl$csize))

# Color in red the nodes in the giant component and in sky blue the rest
V(g)$color  = "SkyBlue2"
V(g)[nodes]$color = "red"
plot(g, layout=coords, vertex.size = 3, vertex.label=NA)

ここでは、これらの赤いノードの隣接行列のみを抽出します。

ここに画像の説明を入力

4

1 に答える 1