2013-11-02 171 views
2

我找到關於如何使用graph.coreness的文檔here如何使用graph.coreness找到頂點所屬的最大k-core

不幸的是,我找回了大約27000個條目的數字列表。

我的目的是簡單地找出如何找出條目所屬的最大k-核心。

我該怎麼做?

+0

發佈本作評論,因爲我不確定這是否是你需要的,但我想'which.ma x(表(graph.coreness(g)))'應該做的。對? – nico

+0

試過了。這給了我最大的頂點,但不是頂點所屬的最大的k-核心。 –

回答

1

我想通了這一點通過此鏈接

https://stackoverflow.com/a/3692710/80353

我基本上做到這一點。

cores = graph.coreness(as.undirected(g)) 
head(sort(cores, decreasing=TRUE), 3) 

這會給我3個最高的k-核心值在向量中。

+0

我認爲OP希望具有最高k-核心的子圖,不僅僅是所有最大核心... – digEmAll

+3

我是OP。 :) –

+0

大聲笑抱歉,我沒有注意到:P – digEmAll

4

假如有這樣的圖形:

library(igraph) 
g <- graph.empty(n=7,directed=FALSE) 
g <- add.edges(g, c(1,2,1,3,1,4,3,5,3,4,4,5,2,7,2,6)) 
g <- set.vertex.attribute(g, name='vert.names',index=V(g),value=LETTERS[V(g)]) 

graph

你可以得到k-核子以這樣的方式

coreness <- graph.coreness(g) 
maxCoreness <- max(coreness) 
# if you just need to know the vertices and not to build the subgraph 
# you can use this variable 
verticesHavingMaxCoreness <- which(coreness == maxCoreness) 
kcore <- induced.subgraph(graph=g,vids=verticesHavingMaxCoreness) 

plot(kcore, 
    vertex.label=get.vertex.attribute(kcore,name='vert.names',index=V(kcore))) 

k-core subgraph

+0

改進了頂點標籤的例子。 – digEmAll

+0

嗚!真棒回答!〜想像我一樣 –

相關問題