# Why switching edges definition changes the result of random walk search for communities? (walktrap)

If a graph object is a not directed graph, then the following set of operations should yield the same result:

require(igraph)

g3 <- graph.data.frame(df[,1:2], directed = F)
g4 <- graph.data.frame(df[,2:1], directed = F)

set.seed(10)
g3_ <- cluster_walktrap(g3)
set.seed(10)
g4_ <- cluster_walktrap(g4)

plot(g3)
plot(g4)


But it doesn't. I would like to understand why. Since the graph is not directed, I don't understand why switching the edges definition in g3 and g4 changes the graph (g3 is different from g4) and, consequently, the result of calling the walktrap algorithm.

The data for reproducing the example can be found on this blog article at this link.

Feel free to either answer on my example or use another example.