Hi Tamas,

> The following snippet gives you the edge indices of all the edges in the
> graph
> with multiplicity > 1:
>
> eids = [index for index, is_multiple in enumerate(graph.is_multiple()) if
> is_multiple]
>

There is a small catch here; you are generating a large number of
eids, whereas in my attempt, I first filtered out the 'unique' edges,
then among them I find those with 'multiple' counterparts. I assumed
this is efficient for v.large graphs. Please correct me if I am wrong.

Now, I am linking another thread here for a quick question. Can I
replace the below code with your suggestion found in:
http://lists.nongnu.org/archive/html/igraph-help/2015-03/msg00024.html?
I am anyways using a list append operation, and your suggestion to use
a combinator function looks elegant.

>> for nm in nonmultedges:
>>     tempdict={}
>>     for name in nm.attribute_names():
>>         tempdict[name]=[]
>>     for e in myg1.es.select(_within=[nm.source, nm.target]):
>>         if e.tuple == nm.tuple:
>>             for name, val in e.attributes().iteritems():
>>                 tempdict[name].append(val)
>>         else:
>>             print 'something wrong'
>>     print tempdict
>>

_______________________________________________
igraph-help mailing list
[email protected]
https://lists.nongnu.org/mailman/listinfo/igraph-help

Reply via email to