ÎncepețiÎncepe gratuit

Betweenness

O altă măsură a importanței unui nod este betweenness-ul acestuia. Acesta indică cât de frecvent se află nodul respectiv pe cele mai scurte căi dintre oricare două noduri din rețea. Poți să-l privești ca pe o măsură a cât de critică este prezența unui nod pentru fluxul de informații în rețea. Persoanele cu un betweenness ridicat reprezintă punți esențiale între diferite zone ale rețelei. În rețeaua noastră de transmitere a rujeolei, nodurile cu betweenness ridicat corespund copiilor care au jucat un rol central în răspândirea bolii către alte zone ale rețelei. În acest exercițiu, vei calcula scorul de betweenness pentru fiecare nod și vei crea un nou grafic al rețelei în care dimensiunea nodurilor este ajustată în funcție de scorul lor, pentru a evidenția nodurile-cheie.

Acest exercițiu face parte din cursul

Analiza rețelelor în R

Vezi cursul

Instrucțiuni pentru exercițiu

  • Calculează betweenness-ul fiecărui nod folosind funcția betweenness() aplicată obiectului graf g. Asigură-te că scorurile sunt calculate pentru o rețea direcționată. Rezultatele funcției vor fi atribuite variabilei g.b.
  • Examinează vizual distribuția scorurilor de betweenness folosind funcția hist().
  • Folosește plot() pentru a crea un grafic al rețelei bazat pe scorurile de betweenness. Etichetele nodurilor ar trebui setate la NA pentru a nu fi afișate. Atributul dimensiunii nodurilor ar trebui să fie unu plus rădăcina pătrată a scorurilor de betweenness din obiectul g.b. Dat fiind că scorurile de betweenness din această rețea variază enorm, normalizarea lor în acest mod permite vizualizarea tuturor nodurilor, păstrând totodată identificabilă importanța lor relativă.

Exercițiu interactiv practic

Încearcă acest exercițiu completând acest cod de exemplu.

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))
Editează și rulează codul