On 10.02.2017 16:26, gogurt wrote:
> This might be a stupid question, but I have a graph with a vector<str>-valued
> vertex property map. That is, each vertex has a vector containing one or
> more strings encoding some metadata about the vertex.
> 
> I want to get a single 1d-list/array containing all the unique string values
> encoded in this property map, over all vertices in the graph. What's the
> best way to do that?

The simplest way is usually the best way. The question above is not really
specific to graph-tool, if you think about it:

    vals = set()
    for v in g.vertices():
       for x in prop[v]:
           vals.add(x)

> I know that I'll have to use the get_2d_array() method on the property map,
> but I can't really understand what the documentation means when it says:
> "The parameter pos must be a sequence of integers which specifies the
> *indexes of the property values which will be used.*"

This does not give what you want at all.

This function is about getting a two-dimensional array representation of
vector-value property maps. The property map values can have different
lengths, and hence to construct a 2D array the function requires the
positions of the individual vectors that will be used to construct the matrix.

Best,
Tiago

-- 
Tiago de Paula Peixoto <[email protected]>

Attachment: signature.asc
Description: OpenPGP digital signature

_______________________________________________
graph-tool mailing list
[email protected]
https://lists.skewed.de/mailman/listinfo/graph-tool

Reply via email to