시작하기무료로 시작하기

Betweenness

특정 정점의 중요도를 나타내는 또 다른 지표는 매개 중심성(betweenness)입니다. 이는 네트워크의 임의의 두 정점 사이에서 해당 정점이 최단 경로 위에 등장하는 빈도를 나타내는 지수예요. 네트워크에서 정보가 흐르는 데 그 정점이 얼마나 핵심적인지를 보여준다고 볼 수 있습니다. 매개 중심성이 높은 개인은 네트워크의 서로 다른 부분을 연결하는 중요한 다리 역할을 합니다. 홍역 전파 네트워크에서는 매개 중심성이 높은 정점이 질병을 네트워크의 다른 부분으로 옮기는 데 중심이 되었던 아이들이죠. 이 연습 문제에서는 각 정점의 매개 중심성 점수를 구한 뒤, 정점 크기를 해당 점수에 따라 조정해 네트워크를 다시 그려 이러한 핵심 정점을 강조해 보겠습니다.

이 연습은 강의의 일부입니다

R로 하는 네트워크 분석

강의 보기

연습 안내

  • 그래프 객체 g에 함수 betweenness()를 사용해 각 정점의 매개 중심성을 계산하세요. 네트워크가 방향성이 있도록 계산되어야 합니다. 이 함수의 결과는 g.b로 할당됩니다.
  • 함수 hist()로 매개 중심성 점수의 분포를 시각적으로 확인하세요.
  • plot()을 사용해 매개 중심성 점수를 반영한 네트워크 그림을 그리세요. 정점 레이블은 나타나지 않도록 NA로 설정합니다. 정점 크기 속성은 객체 g.b에 있는 매개 중심성 점수의 제곱근에 1을 더한 값으로 설정하세요. 이 네트워크에서는 매개 중심성 점수의 격차가 매우 크므로, 이런 방식으로 정규화하면 모든 노드를 볼 수 있으면서도 상대적 중요도는 구분할 수 있습니다.

실습형 인터랙티브 연습

이 예제를 이 샘플 코드를 완성하여 풀어보세요.

library(igraph)

# Calculate betweenness of each vertex
g.b <- ___(g, directed = ___)

# Show histogram of vertex betweenness
___(___, breaks = 80)

# Create plot with vertex size determined by betweenness score
___(g, 
     vertex.label = ___,
     edge.color = 'black',
     vertex.size = sqrt(___)+1,
     edge.arrow.size = 0.05,
     layout = layout_nicely(g))
코드 편집 및 실행