从 data.frame 创建邻接列表
我有一个包含 2 列的 data.frame:节点 A、节点 B。框架中的每个条目都意味着节点 A 和 B 之间的图中的一条边。
必须有一个很好的单行线来将此 data.frame 转换为邻接关系列表。 有什么提示吗?
I have a data.frame with 2 columns: Node A, Node B. Each entry in the frame implies an edge in a graph between node A and B.
There must be a nice one-liner to convert this data.frame into an adjacency list. Any hints?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
既然您标记了此 igraph,那么使用内置功能怎么样?功能?
唯一需要注意的是顶点索引为零,这将在 igraph 0.6 中发生变化。
Since you tagged this igraph, how about using built in functionality?
Only caveat is the vertices are zero indexed, which will be changing with igraph 0.6.
又快又脏……
Quick and dirty ...
你会如何在 R 中表示邻接表? 它需要可变大小的列表来存储相邻节点的集合; 所以你必须使用 list(); 但是在 R 中使用它有什么好处呢?
我可以想到类似 sapply 的函数的蹩脚技巧,但它们对每个节点进行线性扫描。 但玩了一分钟,这里是:一个配对列表的列表,其中每对的第二项是邻接列表。 输出比数据结构实际更疯狂。
how would you even represent an adjacency list in R? it needs variable-sized lists for the set of adjacent nodes; so then you have to use a list(); but then what good is it having it in R?
i can think of lame tricks with sapply-like functions but they do a linear scan for every node. but playing around for 1 minute, here is: a list of pairlists, where the second item of each pair is the adjacency list. output is crazier than the datstructure really is.