Finding communities

Case Studies: Network Analysis in R

Edmund Hart

Instructor

Three different communities

undirected_ment_g <- as.undirected(ment_g)

ment_edg <- cluster_edge_betweenness(undirected_ment_g)
ment_eigen <- cluster_leading_eigen(undirected_ment_g)
ment_lp <- cluster_label_prop(undirected_ment_g)
Case Studies: Network Analysis in R

Sizing the communities

length(ment_edg)
length(ment_eigen)
length(ment_lp)
173
168
212
Case Studies: Network Analysis in R
table(sizes(ment_edg))
  2   3   4   5   6   7   8   9  11  12  18  19  20  23  24  26  28  
103  21  14   7   3   3   1   2   1   2   2   1   1   1   1   2   1   
 31  33  38  40  41  52  58 
  1   1   1   1   1   1   1
table(sizes(ment_eigen))
  2   3   4   5   6   7   9  10  12  18  23  26  29  30  32  34  35  58   
103  22  14   7   4   3   1   1   1   1   1   1   1   1   1   1   1   1    
64  66 101
 1   1   1
table(sizes(ment_lp))
  2   3   4   5   6   7   8   9  10  11  12  13  16  25  26  67  70 
103  32  22  19   8   5   4   3   5   1   2   3   1   1   1   1   1 
Case Studies: Network Analysis in R

Comparing communities

compare(ment_edg, ment_eigen, method = 'vi')
0.9761792
compare(ment_eigen, ment_lp, method = 'vi')
1.192238
compare(ment_lp, ment_edg, method = 'vi')
0.9631608
Case Studies: Network Analysis in R

Plotting community structure

lrg_eigen <- as.numeric(
                names(ment_eigen[which(sizes(ment_eigen) > 45)])
             )

eigen_sg <- induced.subgraph(ment_g, V(ment_g)[ eigen %in% lrg_eigen])
plot(eigen_sg, vertex.label = NA, edge.arrow.width = .8, edge.arrow.size = 0.2, coords = layout_with_fr(ment_sg), margin = 0, vertex.size = 6, vertex.color = as.numeric(as.factor(V(eigen_sg)$eigen)))
Case Studies: Network Analysis in R

Mentions subgraph communities

Case Studies: Network Analysis in R

Let's practice!

Case Studies: Network Analysis in R

Preparing Video For Download...