我正在尝试执行graphkernels R package方法中的CalculateVertexHistKernel(G)
来计算two graphs之间的相似度。
G是igraph图的列表。如何从一组graphml文件创建igraph列表?
答案 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博士提供了这个解决方案。