图表是
a b 1
a b 2
b a 3
a a 4
a a 2
g = read.graph('this_file.ncol', format = 'ncol', directed = TRUE)
当我使用as.undirected(g,mode="collapse")
时,我得到了
a a 7
a b 5
为什么呢?我期待的是
a a 6
a b 6
这是一个错误,还是我不理解'崩溃的含义?
答案 0 :(得分:1)
我可以重现这一点。这就是我得到的:
cat(file = tmp <- tempfile(),
"a b 1
a b 2
b a 3
a a 4
a a 2
")
g <- read.graph(tmp, format = 'ncol', directed = TRUE)
g2 <- as.undirected(g, mode = "collapse")
get.data.frame(g2)
# from to weight
# 1 a a 7
# 2 a b 5
igraph.version()
# [1] "0.7.1"
所以它似乎确实是一个错误。请在https://github.com/igraph/igraph报告。感谢。
as.undirected()
似乎有多条边的问题。这是一种解决方法:
# g3 <- as.undirected(simplify(g, remove.loops = FALSE))
# get.data.frame(g3)
# from to weight
# 1 a a 6
# 2 a b 6