2016-04-14 13 views
1

numpy 2D dizisi, düğümler arasındaki kenarların ağırlıklarını temsil eden değerlerle yaşıyorum. Matris simetriktir ve köşegen sıfırdır. Bu matrisi igraph Grafik nesnesine nasıl dönüştüreceğimize dair bir örnek bulamıyorum. Aşağıdaki yaklaşım denedim ama çalışmıyor:Ağırlıklandırılmış igraph Grafik bitişiklik matrisi olarak numpy summetrik 2D dizilimi oluştur

import numpy as np 
import igraph 

def symmetrize(a): 
    return a + a.T - 2*np.diag(a.diagonal()) 

A = symmetrize(np.random.random((100,100))) 

G = igraph.Graph.Adjacency(A.tolist()) 

cevap

3

kullanın Graph.Weighted_Adjacency() Eğer ağırlık olarak matris içinde orijinal değerlerini korumak istiyorum. Ağırlıklar, igraph'ın oluşturduğu grafiğe weight kenar özniteliği olarak eklenecektir.

İlgili konular