我对networkX很新。所以在非常基本的事情上有问题。
我在文本文件中使用以下格式的网络数据:
InNode OutNode
N1 N5
N2 N4
N3 N6
N2 N2
N4 N7
我的问题如下:
1)如何使用networkX读取数据,以便获取图形之间的节点和边缘?
2)如何计算网络的自我边缘(N2,N2)?
我尝试了以下代码。但它没有给我正确答案。
import matplotlib
import networkx as net
import urllib
import csv
g = net.Graph()
f1 = csv.reader(open("data.txt","rb"))
for row in f1:
g.add_nodes_from(row)
len(g)
g.number_of_nodes()
答案 0 :(得分:7)
请找到解决方案。这可能对像我这样的人有所帮助:
# Reading the file. "DiGraph" is telling to reading the data with node-node. "nodetype" will identify whether the node is number or string or any other type.
g = nx.read_edgelist("data.txt",create_using=nx.DiGraph(), nodetype = int)
# check if the data has been read properly or not.
nx.info(g)
# count the number of nodes
g.number_of_nodes()
# number of self-nodes
g.selfloop_edges()