跳到内容

通过扰动给定图的邻接矩阵并对其顶点进行洗牌来采样一个新图。

用法

sample_correlated_gnp_pair(n, corr, p, directed = FALSE, permutation = NULL)

参数

n

数值标量,采样图的顶点数。

corr

单位区间内的标量,原始图和生成图的邻接矩阵之间的目标皮尔逊相关性(邻接矩阵用作向量)。

p

数值标量,两个顶点之间边的概率,它必须在开区间 (0,1) 内。

directed

逻辑标量,是否生成有向图。

permutation

数值向量,一个排列向量,应用于第一个图的顶点以获得第二个图。如果 NULL,则不会置换顶点。

两个 igraph 对象的列表,名为 graph1graph2,这两个图的邻接矩阵条目与 corr 相关。

详细信息

请参阅下面给出的参考文献。

参考文献

Lyzinski, V., Fishkind, D. E., Priebe, C. E. (2013). Seeded graph matching for correlated Erdős-Rényi graphs. https://arxiv.org/abs/1304.7844

correlated_pair_game().

示例

gg <- sample_correlated_gnp_pair(
  n = 10, corr = .8, p = .5,
  directed = FALSE
)
gg
#> $graph1
#> IGRAPH 1f55087 U--- 10 25 -- 
#> + edges from 1f55087:
#>  [1] 1-- 2 2-- 3 3-- 4 1-- 5 1-- 6 4-- 6 1-- 7 2-- 7 3-- 7 6-- 7 3-- 8 4-- 8
#> [13] 1-- 9 2-- 9 4-- 9 6-- 9 7-- 9 8-- 9 1--10 2--10 3--10 5--10 7--10 8--10
#> [25] 9--10
#> 
#> $graph2
#> IGRAPH 50d6cc1 U--- 10 24 -- 
#> + edges from 50d6cc1:
#>  [1] 1-- 2 2-- 3 3-- 4 1-- 5 1-- 6 4-- 6 1-- 7 2-- 7 3-- 7 6-- 7 3-- 8 4-- 8
#> [13] 5-- 8 1-- 9 2-- 9 4-- 9 6-- 9 7-- 9 8-- 9 2--10 3--10 5--10 7--10 9--10
#> 
cor(as.vector(gg[[1]][]), as.vector(gg[[2]][]))
#> [1] 0.8807048