[英]networkx in python reading from csv file
我在 csv 文件中有一個數據,其中包含以下數據:
Origin Destiny Hours
0 Alat Baku 1.08
1 Baku Alat 1.13
2 Alat Shirvan 0.83
3 Shirvan Alat 0.80
4 Imishli Shirvan 1.42
Index(['Origin', 'Destiny', 'Hours'], dtype='object')
現在當我做
G = networkx.from_pandas_edgelist(data, source='Origin', target='Destiny', edge_attr=True)
我遇到了一個問題或誤解:因為G.edges["Baku","Alat"]
G.edges["Alat","Baku"]
G.edges["Baku","Alat"]
和G.edges["Alat","Baku"]
給出了相同的結果,即{'Hours': 1.13}
. 為什么會這樣,因為它應該為相反的順序提供 1.08 和 1.13。
您應該通過使用參數create_using=networkx.DiGraph()
來使用有向圖
G = networkx.from_pandas_edgelist(
data, source='Origin', target='Destiny', edge_attr=True,
create_using=networkx.DiGraph())
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.