我有一个大的igraph对象,它有几个边缘和顶点属性,我需要写入文件并稍后再次加载(可能是通过不同的程序,如python)。
> g
IGRAPH DN-- 85000 1000000 --
+ attr: name (v/c), numeric_var (e/n), binary_outcome1 (e/x), binary_outcome2 (e/x)
那么我应该使用什么格式将所有边缘属性写入文件格式?
write.graph(g, file = "test1.fileextension",format = "which_format?")
非常感谢!
答案 0 :(得分:5)
专业人士R igraph
read.igraph
帮助文件http://igraph.sourceforge.net/doc/R/read.graph.html中很好地记录了各种支持格式的缺点。 write.igraph
页面显示支持更多类型的输出
Edge List
太简单了,无法满足您的需求Pajek
可能过于特定于域名,并且对GraphML
Dot
可能能够满足您的需求(参考:http://www.graphviz.org/Documentation/dotguide.pdf)GraphML
不会处理超图,嵌套图或混合(有向/无向)图。GML
表示“只使用节点和边缘属性,并且只有它们具有简单类型:整数,实数或字符串。因此,如果属性是数组或记录,则忽略它。如果只有属性的某些值很复杂,情况也是如此。“DL
是不会为你工作的。 NCOL
“只是一个象征性的加权边缘列表”,所以它也很明显。LGL
也太简单了。DIMACS
没有您需要的额外信息。LEDA
(我相信)只支持单一属性。GraphDB
也有局限性。所以,我要给GraphML
和GML
一个。