igraph中是否有一个功能可以发现给定图中的所有频繁子图?例如,类似于gSpan的东西。

最佳答案

R获得了一个软件包subgraphMining,该软件包除其他外还实现了gSpan。但是,它取决于过时的igraph0包。

在帮助?gspan中,它看起来像这样:

library(subgraphMining)
library(igraph0)
graph1 = graph.ring(5)
graph2 = graph.ring(6)

database = array(dim=2);
database[1] = list(graph1);
database[2] = list(graph2);

# Call gspan, 80% frequency
results = gspan(database, "80%");
results
#  [[1]]
# Vertices: 5
# Edges: 10
# Directed: TRUE
# Edges:
#
# [0] '1' -> '5'
# [1] '5' -> '1'
# [2] '2' -> '1'
# [3] '1' -> '2'
# [4] '3' -> '2'
# [5] '2' -> '3'
# [6] '4' -> '3'
# [7] '3' -> '4'
# [8] '5' -> '4'
# [9] '4' -> '5'

09-12 15:25