Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/68.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/date/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
R 使用“创建随机图”;“相同”;幂律度分布_R_Igraph - Fatal编程技术网

R 使用“创建随机图”;“相同”;幂律度分布

R 使用“创建随机图”;“相同”;幂律度分布,r,igraph,R,Igraph,我有一个无向图(蛋白质相互作用网络,PPi),我知道度分布近似于幂律分布。我想创建1000个随机图,复制节点数、边数和“相似”幂律分布 我的真实图形g.lcc具有: > g.lcc #IGRAPH UN-- 12551 166189 -- #+ attr: name (v/c), V3 (e/n) 到目前为止,我所做的是: #Calculate the alpha for my distribution alpha <- power.law.fit(degree(g.lcc, m

我有一个无向图(蛋白质相互作用网络,PPi),我知道度分布近似于幂律分布。我想创建1000个随机图,复制节点数、边数和“相似”幂律分布

我的真实图形
g.lcc
具有:

> g.lcc
#IGRAPH UN-- 12551 166189 -- 
#+ attr: name (v/c), V3 (e/n)
到目前为止,我所做的是:

#Calculate the alpha for my distribution
alpha <- power.law.fit(degree(g.lcc, mode="out"))
#$continuous
#[1] FALSE

#$alpha
#[1] 4.529602

#$xmin
#[1] 178

#$logLik
#[1] -1123.405

#$KS.stat
#[1] 0.0446421

#$KS.p
#[1] 0.7825008
然而,当我这样做时,这两个分布甚至不相似

有什么帮助吗

PS附上了两张带有real.ppi和random.g的图片


您如何知道PPI网络的度分布近似于幂律?它也可以是任何其他厚尾分布。此外,所得幂律拟合的
$xmin
值表明,最佳拟合是通过在度=178时的较低截止值实现的,并且在度低于178时发生的任何情况都不是由方法拟合的指数近似的

如果要创建与图形具有完全相同的度分布的随机网络,可以尝试使用
degree.sequence.game
从头开始生成一个(如果要避免同一对节点之间的多条边,请确保使用
method=“vl”
method=“simple.no.multiple
),或使用
重新布线.edges
重写图形的边


关于幂律,我建议阅读经验数据中类似幂律的分布。

您如何知道PPI网络的度分布近似于幂律?它也可以是任何其他厚尾分布。此外,生成的幂律拟合的
$xmin
值表明,在by度=178时的下限,而在178度以下发生的任何事情都不能用该方法拟合的指数来近似。因此,不可能创建近似我的度分布的随机网络?我应该使用degree.sequence.game来创建随机图吗?最后一个问题,我如何知道我的PPI网络近似值tes是幂律分布,没有其他分布?非常感谢@Tamás必须使用
degree.sequence.game
获得与图形具有完全相同的度分布的随机图形。或者使用
rewre.edges
重新布线图形的边(尽管我会选择
degree.sequence.game
)关于幂律,我建议你先读这篇文章:@Tamás,如果你写下你的评论作为答案,我会奖励你。我认为厚尾分布总是意味着渐进地遵循幂律。可能更好的词是重尾分布。
random.g <- static.power.law.game(12551, 166189, 4.53, exponent.in=-1, finite.size.correction=T)