2013-04-29 14 views
2

我试图减少一个大型网络,只有它的边缘的5%,由边缘权重决定。在R,Igraph。保持或建立一个新的网络,从顶部5%加权边缘

我通常通过声明为edgeweight截止点像这样修剪我的网络:

G2 < - delete.edges(G1,E(G1)[重量< 20])

有一种方法,根据重量删除的边缘的较低的95%,类似:

G2 < - delete.edges(G1,E(G1)[重量外的至p 5%])

?或者提取最高的5%,否则?

谢谢。

+0

您可以使用'quantile()'计算5%分位数(分成5%和95%的值),然后用它作为分界点。 – Rcoster 2013-04-29 19:40:16

回答

2

没有发布任何示例,只提供最低限度的代码,我担心只提供“权重”可能会隐藏attach的使用。也许:

g2 <- delete.edges(g1, E(g1) [ weight < quantile(weight, 0.95) ]) 
+0

谢谢!你是最好的! – Mon 2013-04-29 19:52:48

相关问题