class graphlab.SGraph(vertices=None, edges=None, vid_field='__id', src_field='__src_id', dst_field='__dst_id')
一个可拓展的图像数据结构。SGraph数据结构允许在角和边上有任意的词典类参数,以供灵活的边和角点查询函数,并可以和SFrame无缝转换。
有若干方法可以构建SGraph。最简单的方法是建立一个空的SGraph,然后向其中添加角点和边,使用的方法是 add_vertices()
和 add_edges()
。SGraph也可以从保存在SFrame中的角点和边的表来构建。这些SFrame中的非ID列被认为是角点和边的参数。
获取更多关于构建和使用SGraph的细节,请阅读User Guide。
参数: | vertices : SFrame, 可选参数
edges : SFrame, 可选参数
vid_field : str, 可选参数
src_field : str, 可选参数
dst_field : str, 可选参数
|
---|
注意:
- SGraph是不可变的。在下面的示例中,
add_vertices()
和add_edges()
命令都返回一个新的图像,旧图像收集在垃圾堆中。
示例:
>>> from graphlab import SGraph, Vertex, Edge
>>> g = SGraph()
>>> verts = [Vertex(0, attr={'breed': 'labrador'}),
Vertex(1, attr={'breed': 'labrador'}),
Vertex(2, attr={'breed': 'vizsla'})]
>>> g = g.add_vertices(verts)
>>> g = g.add_edges(Edge(1, 2))
方法
SGraph.add_edges (edges[, src_field, dst_field]) |
在SGraph中新增边。 |
SGraph.add_vertices (vertices[, vid_field]) |
在SGraph中新增顶点。 |
SGraph.copy () |
返回SGraph的一个副本。 |
SGraph.get_edge_fields () |
返回图像中边参数列表。 |
SGraph.get_edges (self[, src_ids, dst_ids, ...]) |
返回所有边和它们的参数。 |
SGraph.get_fields () |
返回区域中边和角点的参数。 |
SGraph.get_neighborhood (ids[, radius, ...]) |
返回一个角点集相邻元素,不考虑边的方向。 |
SGraph.get_vertex_fields () |
返回区域中SGraph的角点参数的列表。 |
SGraph.get_vertices (self[, ids, fields, format]) |
返回所有角点及它们的参数。 |
SGraph.save (filename[, format]) |
保存SGraph到磁盘。 |
SGraph.select_fields (fields) |
作为一个新的图形返回选中区域的图形。 |
SGraph.show ([vlabel, vlabel_hover, vcolor, ...]) |
使用 canvas 查看图像。 |
SGraph.summary () |
使用词典类返回角点和边的数目。 |
SGraph.triple_apply (triple_apply_fn, ...[, ...]) |
并行地对每一个边和它对应的源和目的角点使用一个转换函数。 |
属性
SGraph.edges |
SGraph的SFrame格式边。 |
SGraph.vertices |
SGraph的SFrame格式角点。 |