Python networkx中獲取圖的鄰接矩陣方式
networkx如何獲取圖的鄰接矩陣
需要調(diào)取networkx中g(shù)raph實(shí)例的鄰接矩陣,搜“network 鄰接矩陣”沒有迅速找到解決方案。我寫一個(gè)吧。
錯(cuò)誤獲取
networkx中有個(gè)adjacency_matrix()函數(shù),得到的鄰接表看形狀雖然是N*N,但是打印出來會(huì)發(fā)現(xiàn)是這個(gè)格式:
(0, 1) 1
(0, 30) 1
(0, 33) 1
(0, 99) 1
第一列是源頭和終止節(jié)點(diǎn),第二列是權(quán)重。
但是,如果你下列語句遍歷,是會(huì)報(bào)錯(cuò)的:ValueError: not enough values to unpack (expected 2, got 1)
# 錯(cuò)誤示范 for (x,y), w in nx.adjacency_matrix(G): ? ? print(x, y, w)
正確獲取
import networkx as nx import numpy as np A=np.array(nx.adjacency_matrix(G).todense())
轉(zhuǎn)換為numpy矩陣是因?yàn)樵嫉母袷讲恢С諥[i][j]形式的索引。
成功得到鄰接矩陣,解決!
[[0 0 0 ... 0 0 1]
[0 0 1 ... 0 0 0]
[0 1 0 ... 0 0 0]
...
[0 0 0 ... 0 0 0]
[0 0 0 ... 0 0 1]
[1 0 0 ... 0 1 0]]
鄰接矩陣 轉(zhuǎn) 網(wǎng)絡(luò)圖
逛知乎看到的,老是忘記,記一下:
import networkx as nx graph = nx.from_numpy_matrix(Matrix) ?
networkx自帶函數(shù)將鄰接矩陣轉(zhuǎn)為網(wǎng)絡(luò)圖
總結(jié)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
基于Python實(shí)現(xiàn)虛假評(píng)論檢測(cè)可視化系統(tǒng)
這篇文章主要為大家詳細(xì)介紹了如何基于Python實(shí)現(xiàn)一個(gè)簡單的虛假評(píng)論檢測(cè)可視化系統(tǒng),文中的示例代碼講解詳細(xì),感興趣的小伙伴可以了解一下2023-04-04
Python根據(jù)歐拉角求旋轉(zhuǎn)矩陣的實(shí)例
今天小編就為大家分享一篇Python根據(jù)歐拉角求旋轉(zhuǎn)矩陣的實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2019-01-01
python中Apriori算法實(shí)現(xiàn)講解
給大家詳細(xì)講解一下Apriori 算法在python中的實(shí)現(xiàn)過程,有需要的朋友收藏一下本片文章吧。2017-12-12
Python數(shù)據(jù)類型之String字符串實(shí)例詳解
這篇文章主要介紹了Python數(shù)據(jù)類型之String字符串,結(jié)合實(shí)例形式詳細(xì)講解了Python字符串的概念、定義、連接、格式化、轉(zhuǎn)換、查找、截取、判斷等常見操作技巧,需要的朋友可以參考下2019-05-05
Python中operator模塊的操作符使用示例總結(jié)
operator模塊中包含了Python的各種內(nèi)置操作符,諸如邏輯、比較、計(jì)算等,這里我們針對(duì)一些常用的操作符來作一個(gè)Python中operator模塊的操作符使用示例總結(jié):2016-06-06

