首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >生成层次随机图

生成层次随机图
EN

Stack Overflow用户
提问于 2015-10-22 03:11:45
回答 1查看 364关注 0票数 1

我试图将分层随机图模型拟合到edgelist (表示无权、无向大网络中的交互),并度量模型的聚类和路径长度。我不太确定我所做的是否正确,因为我可能没有完全掌握这些文档。

这是密码。

代码语言:javascript
复制
#Import Edgelist, convert to igraph
imported_g=read.csv('graph_edgelist.csv',header=FALSE,check.names=FALSE)
g=graph.data.frame(imported, directed=FALSE, vertices=NULL)

#Calculate parameters, make sure network is ok.
transitivity(g)
>0.3352213
average.path.length(g)
>3.6299


#Fit HRG model, convert back to igraph object to measure metrics.  
hrg_model = hrg.fit (g, hrg = g, start = FALSE, steps = 0)
igraph_hrg=as.igraph(hrg_model)

#Measure metrics of fit_hrg
average.path.length(igraph_hrg)
>50
transitivity(igraph_hrg)
>0

基本上,igraph的度量标准与我导入的edgelist非常不同(它具有更低的路径长度和更高的聚类)。我认为这意味着模型未能捕捉到edgelist的属性,但我不确定我是否正在生成HRG模型。

将HRG模型拟合到图中与实际生成HRG模型之间有什么区别,我可以用它来测量有用的参数?会不会是igraph函数hrg.create?

igraph代码的基础是:http://tuvalu.santafe.edu/~aaronc/hierarchy/

希望我的问题有意义。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-10-25 19:55:59

不要将hrg=...参数传递给hrg.fit --只有当您有一个要用作起点的HRG模型时,才应该使用它。(除非将start设置为TRUE,否则无论如何都会忽略它)。否则,您的代码似乎是正确的-并且请注意,HRG模型从未打算捕获平均路径长度或原始图的传递性。不久前,我用几个随机图模型做了一些实验,看看它们有多紧密地复制了一些生物网络的不同结构特性。我的结果表明,分层随机图模型在复制网络的平均度和平均顶点--顶点距离方面做得很好,但在再现平均顶点传递率或motif事件方面还不够好--但公平地说,我也没有找到任何其他能很好地完成这项工作的随机图模型。

将HRG模型拟合到图中与实际生成HRG模型之间有什么区别,我可以用它来测量有用的参数?

模型拟合采用实际(实)图,并为层次随机图模型寻找参数,该模型能很好地逼近真实图(在某种意义上)。生成步骤采用参数化的HRG模型(通常是从前一个拟合步骤建立的),然后创建另一个图。这是用sample_hrg实现的。

会不会是igraph函数hrg.create?

不,hrg.create采用二叉树表示的HRG模型的结构(类似于您在亚伦的论文中看到的图),然后创建一个HRG模型对象,您以后可以传递给sample_hrg

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33272778

复制
相关文章

相似问题

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