I'd like to use the "add_edge_list" function to add edges to my graph, and simultaneously assign a value for an edge property map for each of the added edges.
When I try the following example (with no edge property map information) works fine:
elist1 = np.array([[0,1], [1, 2]]) #edge list with no value for edge property map data (only the source and target for the edges) g = gt.Graph() my_eprop = g.new_edge_property('bool') g.add_edge_list(elist)
But with the following example, I get the error below:
elist2 = np.array([[0,1, 1], [1, 2, 0]]) #edge list with edge property map value in 3rd column g = gt.Graph() my_eprop = g.new_edge_property('bool') g.add_edge_list(elist2, eprops=my_eprop)
Error:
--------------------------------------------------------------------------- ValueError Traceback (most recent call last) <ipython-input-48-6a949ea52c9b> in <module>() ----> 1 g.add_edge_list(elist2, eprops=my_eprop)
/usr/lib/python2.7/dist-packages/graph_tool/__init__.pyc in add_edge_list(self, edge_list, hashed, string_vals, eprops) 1969 eprops = () 1970 else: -> 1971 convert = [_converter(x.value_type()) for x in eprops] 1972 eprops = [_prop("e", self, x) for x in eprops] 1973 if not isinstance(edge_list, numpy.ndarray):
/usr/lib/python2.7/dist-packages/graph_tool/__init__.pyc in __getitem__(self, k) 534 kt = "Graph" 535 raise ValueError("invalid key '%s' of type '%s', wanted type: %s" --> 536 % (str(k), str(type(k)), kt) ) 537 538 def __setitem__(self, k, v):
ValueError: invalid key '0' of type '<type 'int'>', wanted type: Edge ---------------------------------------------------------------------------
Please help!
-- View this message in context: http://main-discussion-list-for-the-graph-tool-project.982480.n3.nabble.com/... Sent from the Main discussion list for the graph-tool project mailing list archive at Nabble.com.