Построить матрицу смежности с заданным списком кортежей - PullRequest
0 голосов
/ 23 марта 2020

Ниже приведен список кортежей

[(772, 36, 3),
 (471, 228, 5),
 (641, 401, 4),
 (312, 98, 4),
 (58, 504, 5),
 (235, 727, 5),
 (285, 266, 4),
 (451, 513, 4),
 (436, 661, 5),
 (101, 648, 3),
 (4, 229, 3),
 (159, 174, 4),
 (832, 1141, 4),
 (53, 544, 3),
 (755, 471, 3),
 (886, 1049, 4),
 (931, 574, 2),
 (641, 582, 4),
 (585, 181, 3),
 (853, 456, 3)]

Я хочу создать матрицу прилагательных, используя кортеж [0] и кортеж [1] в качестве размера матрицы и кортеж [2] в качестве значения внутри него.

Мой код:

import networkx as nx
from networkx.algorithms.bipartite import biadjacency_matrix

def to_adjacency_matrix(data,edges):
    g = nx.DiGraph()
    g.add_edges_from(edges)
    partition_1 = set(map(itemgetter(0), data))
    return biadjacency_matrix(g, partition_1).toarray()

to_adjacency_matrix(data,edges)

, получая исключение как TypeError: объект 'int' не может быть повторен в "g.add_edges_from (dge)"

...