如何从R中的.graphml文件创建igraph图列表

时间:2017-11-22 13:28:22

标签: r igraph graphml

我正在尝试执行graphkernels R package方法中的CalculateVertexHistKernel(G)来计算two graphs之间的相似度。

G是igraph图的列表。如何从一组graphml文件创建igraph列表?

1 个答案:

答案 0 :(得分:1)

以下是为现有.graphml文件构建igraph图列表的代码。 graphkernals仅使用(正)数值。因此我不得不用数字代码替换运算符。我用过(* == 1)。否则,函数CalculateVertexHistKernel(G)崩溃。

#loading the files
g1 <- read.graph("15_4.graphml", format = "graphml")
g2 <- read.graph("30_2.graphml", format = "graphml")

#replacing * with 1
V(G[[1]])$label
[1] NaN  15   4 #NaN is the *
V(G[[2]])$label
[1] NaN  30   2

V(G[[1]])$label[1] <- 1
V(G[[2]])$label[1] <- 1

#creating the list
gList = list(g1,g2)

#computing similarity
k<-CalculateVertexHistKernel(gList)

包裹的作者Mahito Sugiyama博士提供了这个解决方案。