Python Networkx add_weighted_edges_от ошибки значения с 3 столбцами

#python #io #statistics #networkx #directed-graph

Вопрос:

 G = nx.MultiDiGraph()
nodes = nx.read_adjlist("nodes.csv")
edges = nx.read_weighted_edgelist("edges.csv",delimiter=',')

G.add_nodes_from(nodes)
G.add_weighted_edges_from(edges.edges())
 

Итак, это то, что у меня есть до сих пор, с файлом .CSV, отформатированным как
A,B,2.0
B,A,10.2
и т. Д

https://networkx.org/documentation/stable/reference/classes/generated/networkx.DiGraph.add_edges_from.html

Этот пример понятен, когда точки уже есть в сценарии, но я не нашел списка аргументов для того, как должно выглядеть «add_weighted_edges_from» для чтения в формате .CSV или .TSV.

Когда я запускаю его так, как он написан, я получаю ошибку:

 ' in parse_edgelist edge_value = edge_type(edge_value)ValueError: could not convert    string to float:return argmap._lazy_compile(__wrapper)(*args, **kwargs) TypeError: Failed to convert weight data  to type <class 'float'>.'
 

Я думаю, что реальная проблема в том, что я неправильно форматирую либо список read_weight_edgelist, либо G. add_weight_edges_from (), но я ни за что на свете не могу разобраться в документации для этого с помощью .CSV.

Комментарии:

1. Пожалуйста, проясните вашу конкретную проблему или предоставьте дополнительные сведения, чтобы точно указать, что вам нужно. Поскольку это написано в настоящее время, трудно точно сказать, о чем вы просите.