首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Erdos-Renyi图的复制

Erdos-Renyi图的复制
EN

Stack Overflow用户
提问于 2017-10-29 08:30:45
回答 1查看 229关注 0票数 1

我对R来说真的很陌生,我的课上有一个作业。我要创建1000个网络的额尔多斯-仁义模式。问题是,我实际上可以创建一个模型,检查它的参数,如度数分布,绘制它等等。我还可以检查它的传递性等等。然而,我必须将这1000个网络的平均聚类系数(局部传递性)与我们在Cytoscape中一直在研究的一些网络进行比较。这是我已经知道的代码:

代码语言:javascript
复制
library(igraph) 
g<-erdos.renyi.game(1000,2000, type=c("gnm"))
transitivity(g) #and other atrributes...
g2<-replicate(g,1000)
transitivity(g2[[1]])
#now I have sort of list with every graph but when I try to analyze 
#I got the communicate that it is not a graph object

我必须计算这1000个网络的标准偏差和平均ACC,然后进行比较。我将感谢任何形式的帮助。

实际上我试了很多:

代码语言:javascript
复制
g<-erdos.renyi.game(1026,2222,type=c("gnm"))
g2<-1000*g
transitivity(g2[2]) # this however ends in "not a graph object"error
g2[1] #outputs the adjacency matrix but instead of 1026 vertices,
#I've got 1026000 vertices, so multiplication doesn't replicate function
#but parameters 

此外,我还尝试统一了图形列表

代码语言:javascript
复制
glist<-1000*g
acc<-union(glist, byname="auto")
transitivity(acc) #outputs the same value as first function g (only one 
#erdos-renyi graph
EN

回答 1

Stack Overflow用户

发布于 2017-10-29 21:50:25

要将多个图表相乘,请使用以下复制函数

代码语言:javascript
复制
g<-erdos.renyi.game(100, 20, type=c("gnm"))
g2<-replicate(1000, erdos.renyi.game(100, 20, type=c("gnm")), simplify=FALSE); 
sapply(g2, transitivity)

要计算一些属性的平均值,如平均度或传递性,请使用:

代码语言:javascript
复制
mean(sapply(g2, transitivity))
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46995809

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档