如何使用graph.coreness找到顶点所属的最大k-core

时间:2013-11-02 16:51:42

标签: r graph

我找到了有关如何使用graph.coreness的文档here

不幸的是,我找回了大约27000个条目的数字列表。

我的目的是简单地弄清楚如何找出条目所属的最大k核心。

我该怎么做?

2 个答案:

答案 0 :(得分: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-core子图:

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

答案 1 :(得分:1)

我用这个链接想出了这个

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

基本上我这样做。

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

这将给出载体中3个最高k核心值。