Use this if you are using igraph from R
sample_spanning_tree
picks a spanning tree of an undirected graph
randomly and uniformly, using loop-erased random walks.
sample_spanning_tree(graph, vid = 0)
graph |
The input graph to sample from. Edge directions are ignored if the graph is directed. |
vid |
When the graph is disconnected, this argument specifies how to handle the situation. When the argument is zero (the default), the sampling will be performed component-wise, and the result will be a spanning forest. When the argument contains a vertex ID, only the component containing the given vertex will be processed, and the result will be a spanning tree of the component of the graph. |
An edge sequence containing the edges of the spanning tree. Use
subgraph.edges
to extract the corresponding subgraph.
subgraph.edges
to extract the tree itself
g <- make_full_graph(10) %du% make_full_graph(5) edges <- sample_spanning_tree(g) forest <- subgraph.edges(g, edges)