Я пытаюсь взять взвешенный график networkx и преобразовать его в файл edgelist .txt, где каждая строка принимает форму трех разделенных пробелом чисел, которые указывают начальный узел, конечный узел и соответствующий вес.
Вот то, что я попробовал для простого семиузлового взвешенного неориентированного графика:
import networkx as nx
import numpy as np
A = np.matrix([[0,7,7,0,0],[7,0,6,0,0],[7,6,0,2,1],[0,0,2,0,4],
[0,0,1,4,0]])
G = nx.from_numpy_matrix(A)
nx.write_edgelist(G, "weighted_test_edgelist.txt", delimiter=' ')
Текстовый файл создан и выглядит следующим образом:
0 1 {'weight': 7}
0 2 {'weight': 7}
1 2 {'weight': 6}
2 3 {'weight': 2}
2 4 {'weight': 1}
3 4 {'weight': 4}
Тем не менее, я хочу, чтобы вышеприведенное вместо этого отображалось как
0 1 7
0 2 7
1 2 6
2 3 2
2 4 1
3 4 4