[英]How to create a graph in networkx from a sparse matrix?
I have a fairly large sparse matrix. 我有一个相当大的稀疏矩阵。 The sparse matrix have elements in the below format. 稀疏矩阵具有以下格式的元素。 I want to create a graph network using a networkx library. 我想使用networkx库创建一个图形网络。 Now, how should I approach? 现在,我应该如何处理?
Row and column are nodes and they are connected if the value of the matrix element is 1. 行和列是节点,如果矩阵元素的值为1,则它们是连接的。
In [44]: print(a)
(0, 0) 1
(1, 2) 1
(1, 3) 1
(2, 3) 1
Take a look at 看一眼
from_scipy_sparse_matrix . from_scipy_sparse_matrix 。
The call looks like G=nx.from_scipy_sparse_matrix(A, parallel_edges=False, create_using=None, edge_attribute='weight')
调用看起来像G=nx.from_scipy_sparse_matrix(A, parallel_edges=False, create_using=None, edge_attribute='weight')
A
is the sparse matrix. A
是稀疏矩阵。
If parallel_edges=False
, then the entry is considered an edge weight 如果parallel_edges=False
,则该条目被视为边缘权重
create_using
says what kind of graph it is. create_using
表示它是哪种图形。 It defaults to nx.Graph
. 默认为nx.Graph
。
If create_using
is MultiGraph
of MultiDiGraph
, and parallel_edges=True
, and all edges are entries, then a 2
would mean 2 edges. 如果create_using
是MultiGraph
的MultiDiGraph
,并且parallel_edges=True
,并且所有边都是条目,则2
表示2条边。
Otherwise the entries are treated as edge attributes. 否则,将条目视为边缘属性。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.