我有.csv数据集,它有两列,每列都有节点,这个文件的一行代表两个节点之间的关系。 我想用它来创建一个使用Python的networkx库的图形,但我无法弄清楚如何连续到达每列的每个单元格。这是我的代码。
import networkx as nx
import csv
G = nx.Graph()
with open('/pathToTheFile/edges.csv', newline='') as f:
reader = csv.reader(f)
counter = 0
for row in reader:
G.add_edge()#I will pass two nodes here to add an edge between them
counter += 1
if counter >= 65535:
break
答案 0 :(得分:0)
因为它是.csv,你可以用逗号分隔它:
values = row.split(',')
# 1st column value in row:
values[0]
# 2nd column value in row
values[1]
答案 1 :(得分:0)
当您遍历csv阅读器时,您将文件的每一行都作为列表。因此,您可以使用索引来连续访问第0个和第1个单元格,并在它们之间创建边缘。
import networkx as nx
import csv
G = nx.Graph()
with open('csv-networkx.csv', newline='') as f:
reader = csv.reader(f)
counter = 0
for row in reader: # row is a list of the cells in this row.
G.add_edge(row[0], row[1])
counter += 1
if counter >= 65535:
break