Use this if you are using igraph from R
Sampling from the stochastic block model of networks
sample_sbm(n, pref.matrix, block.sizes, directed = FALSE, loops = FALSE) sbm(...)
n |
Number of vertices in the graph. |
pref.matrix |
The matrix giving the Bernoulli rates. This is a KxK matrix, where K is the number of groups. The probability of creating an edge between vertices from groups i and j is given by element (i,j). For undirected graphs, this matrix must be symmetric. |
block.sizes |
Numeric vector giving the number of vertices in each group. The sum of the vector must match the number of vertices. |
directed |
Logical scalar, whether to generate a directed graph. |
loops |
Logical scalar, whether self-loops are allowed in the graph. |
... |
Passed to |
This function samples graphs from a stochastic block model by (doing the
equivalent of) Bernoulli trials for each potential edge with the
probabilities given by the Bernoulli rate matrix, pref.matrix
.
An igraph graph.
Gabor Csardi csardi.gabor@gmail.com
Faust, K., & Wasserman, S. (1992a). Blockmodels: Interpretation and evaluation. Social Networks, 14, 5–61.
## Two groups with not only few connection between groups pm <- cbind( c(.1, .001), c(.001, .05) ) g <- sample_sbm(1000, pref.matrix=pm, block.sizes=c(300,700)) g