Nätverksrandomiseringar

Nätverksanalys i R

James Curley

Associate Professor, University of Texas at Austin

Slumpmässiga grafer

erdos.renyi.game(n = gorder(g), p.or.m = edge_density(g), type = "gnp")
Nätverksanalys i R

Slumpmässiga grafer och randomiseringstester

  1. Generera 1 000 slumpmässiga grafer baserade på det ursprungliga nätverket – t.ex. med samma antal noder och ungefärlig densitet.

  2. Beräkna den genomsnittliga väglängden för det ursprungliga nätverket.

  3. Beräkna den genomsnittliga väglängden för de 1 000 slumpmässiga nätverken.

  4. Avgör hur många slumpmässiga nätverk som har en genomsnittlig väglängd som är större eller mindre än det ursprungliga nätverkets.

Nätverksanalys i R

Generera 1 000 slumpmässiga grafer:

gl <- vector('list',1000)

for(i in 1:1000){
    gl[[i]] <- erdos.renyi.game(
                    n = gorder(g), 
                    p.or.m = edge_density(g), 
                    type = "gnp"
                     ) 
}

Beräkna genomsnittlig väglängd för 1 000 slumpmässiga grafer:

gl.apls <- unlist(
  lapply(gl, mean_distance, directed = FALSE) 
)
Nätverksanalys i R

Jämförelse med det ursprungliga nätverket

hist(gl.apls, breaks = 20)

abline(
  v = mean_distance(
    g, directed=FALSE
    ),
      col = "red", 
      lty = 3, 
      lwd = 2
)

Nätverksanalys i R

Nu kör vi en övning!

Nätverksanalys i R

Preparing Video For Download...