igraph-help
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [igraph] Problem with Graph.Adjacency


From: Tamas Nepusz
Subject: Re: [igraph] Problem with Graph.Adjacency
Date: Wed, 24 Feb 2010 23:59:48 +0000

Dear Jonathan,

> On my local MacBook, it works when a.dtype = "int32". However, on our 64bit 
> Linux cluster, only a.dtype = "float64" works, wasting a lot of memory.
> 
> Do you have any idea, what could be the cause of this issue?

Please note that list(a) does not convert a 2D NumPy array into a proper list 
of lists (what igraph.Graph.Adjacency requires), it converts the matrix into a 
list of 1D NumPy arrays:

In [1]: import numpy as np
In [2]: a=np.array([[1,0,1], [0,1,0], [1,0,1]], dtype="int8")
In [3]: list(a)
Out[3]: 
[array([1, 0, 1], dtype=int8),
 array([0, 1, 0], dtype=int8),
 array([1, 0, 1], dtype=int8)]

What you need is a.tolist():

In [4]: a.tolist()
Out[4]: [[1, 0, 1], [0, 1, 0], [1, 0, 1]]
In [5]: g = igraph.Graph.Adjacency(a.tolist())
In [6]: summary(g)
3 nodes, 5 edges, directed

Number of components: 2
Diameter: 1
Density: 0.8333
Reciprocity: 1.0000
Average path length: 1.0000

-- 
Tamas





reply via email to

[Prev in Thread] Current Thread [Next in Thread]