1

我在 ubuntu 中使用 graphlab 创建。我尝试使用以下命令从 2 个 csv 文件中添加 2 种顶点:

import graphlab as gl

v1 = gl.SFrame.read_csv('~/Documents/1.csv')
v2= gl.SFrame.read_csv('~/Documents/2.csv') 

g = g.add_vertices(vertices=v1, vid_field='name')
g = g.add_vertices(vertices=v2, vid_field='id')

但我发现它不起作用。在我运行最后一个命令后尝试添加第二种顶点,我第一次添加的顶点被覆盖了!我怎样才能正确地做到这一点?我怎样才能正确地添加两种边缘?

提前谢谢!

4

1 回答 1

1

在下面的示例中,我创建了两组顶点并将它们添加到图形中,然后创建了两组边并将它们添加到图形中。

>>> a = graphlab.SFrame({'id': [0, 1, 2, 3]})
>>> b = graphlab.SFrame({'name': [5, 6, 7]})
>>> g = graphlab.SGraph().add_vertices(a, 'id').add_vertices(b, 'name')
>>> e1 = graphlab.SFrame({'id': [0, 0, 1], 'name': [6, 6, 5]})
>>> e2 = graphlab.SFrame({'id': [2, 3], 'name': [5, 7]})
>>> g = g.add_edges(e1, 'id', 'name').add_edges(e2, 'id', 'name')
>>> g

SGraph({'num_edges': 5, 'num_vertices': 7})
Vertex Fields:['__id']
Edge Fields:['__src_id', '__dst_id']
于 2014-09-25T00:41:54.830 回答