Generate a new random graph from a given graph by randomly adding/removing edges
Sample a new graph by perturbing the adjacency matrix of a given graph and shuffling its vertices.
sample_correlated_gnp(old.graph, corr, p = old.graph$p, permutation = NULL)
old.graph |
The original graph. |
corr |
A scalar in the unit interval, the target Pearson correlation between the adjacency matrices of the original the generated graph (the adjacency matrix being used as a vector). |
p |
A numeric scalar, the probability of an edge between two vertices, it must in the open (0,1) interval. |
permutation |
A numeric vector, a permutation vector that is
applied on the vertices of the first graph, to get the second graph. If
|
Please see the reference given below.
An unweighted graph of the same size as old.graph such
that the correlation coefficient between the entries of the two
adjacency matrices is corr. Note each pair of corresponding
matrix entries is a pair of correlated Bernoulli random variables.
Lyzinski, V., Fishkind, D. E., Priebe, C. E. (2013). Seeded graph matching for correlated Erdos-Renyi graphs. https://arxiv.org/abs/1304.7844
g <- sample_gnp(1000, .1) g2 <- sample_correlated_gnp(g, corr = 0.5) cor(as.vector(g[]), as.vector(g2[])) g g2
Please choose more modern alternatives, such as Google Chrome or Mozilla Firefox.