2015-06-16 35 views
2

我使用R中的igraph来计算图的度量,我的图形在一个未连接图的PIN和断开连接的图中进行。 连通图的亲密度法很好且正确计算,并且对于断开图不好!igraph - 如何计算密切方法在iGraph中断开图

library(igraph) 
# Create of Graph Matrix for Test Closeness Centrality 
g <- read.table(text="A B 
    1 2 
    2 4 
    3 4 
    3 5", header=TRUE) 
gadj <- get.adjacency(graph.edgelist(as.matrix(g), directed=FALSE)) 
igObject <- graph.adjacency(gadj) # convert adjacency matrix to igraph object 
gCloseness <- closeness(igObject,weights = NULL) # Assign Closeness to Variable for print 

输出:

[1] 0.1000000 0.1428571 0.1428571 0.1666667 0.1000000

我的断开的图:

library(igraph) 
# Create of Graph Matrix for Test Closeness Centrality 
g <- read.table(text="A B 
1 2 
3 4 
3 5", header=TRUE) 
gadj <- get.adjacency(graph.edgelist(as.matrix(g), directed=FALSE)) 
igObject <- graph.adjacency(gadj) # convert adjacency matrix to igraph object 
gCloseness <- closeness(igObject,weights = NULL) # Assign Closeness to Variable for print 

输出:

[1] 0.06250000 0.06250000 0.08333333 0.07692308 0.07692308

该输出是对吗?如果正确如何计算?

回答

2

请阅读closeness函数的documentation;它明确规定的igraph对待如何断开图:

如果顶点vi之间则公式代替的路径长度中使用顶点的总数无(有向)路径。

计算则似乎是对我来说是正确的,但我要说的是,接近中心本身并没有断开连接的图形定义良好的,什么的igraph这里使用更是一个黑客的(尽管一个相当标准的黑客)而不是对问题的严格处理。我会避免在断开的图上使用接近中心性。

+0

谢谢。我有一个PIN码的工作,是否可能的PIN码网络被断开?我想用图表分析一个PIN码网络,你有什么建议? –

+0

如果可能的话,在断开连接图中编写一个示例计算示例。 TNX。 –