incapaz de cargar un csv simple en networkx en Python

Soy un noobie completo en Python, y me gustaría estudiar un conjunto de datos utilizando el paquete networkx. No entiendo lo que está mal aquí:

Tengo un csv que se parece a esto (extracto):

['152027', '-6167'] ['152027', '-4982'] ['152027', '-3810'] ['152027', '-2288'] ['152027', '-1253'] ['152100', '-152100'] ['152100', '-86127'] 

Llamemos a este .csv archivos de nodes . Los números aquí no tienen ningún significado particular. Solo son nombres anónimos: por lo tanto, 152027 es una persona que está conectada a individuos -6167, individuos -4982, etc.

Yo uso el siguiente código en Python

 import csv import networkx as nx file = csv.reader(open('nodes', 'rb'), delimiter=',') G=nx.read_edgelist(file, delimiter=',',nodetype=float,encoding='utf-8') G.number_of_nodes() 

y me sale el triste Out[71]: 0 No entiendo lo que está mal aquí. ¿Me podría ayudar?

nx.read_edgelist espera que la primera variable sea un identificador de archivo o una cadena de nombre de archivo, no un objeto csv.reader .

No utilice csv en absoluto; prueba solo

 G = nx.read_edgelist('nodes', delimiter=',', nodetype=int, encoding="utf-8") 

Editar: si necesita omitir una línea de encabezado, puede hacer

 with open('nodes', 'rb') as inf: next(inf, '') # skip a line G = nx.read_edgelist(inf, delimiter=',', nodetype=int, encoding="utf-8") 

archivo es una palabra clave de python. Trate de nombrar la variable otra cosa como csvfile.