NetworkX

numpy数组邻接矩阵创建图

  • nx.from_numpy_array(A, parallel_edges=False, create_using=None)ref
    • 默认创建nx.Graph,A中非对称部分只要存在一个则认为存在边,构成无向图

pyg

torch_geometric.utils

  • dense_to_sparse(adj) -> (edge_index, edge_attr) ,转换邻接矩阵为COO格式edge_index
  • to_dense_adj(edge_index, *) -> adj,形状(B, max_num_nodes, max_num_nodes)
  • to_undirected(edge_index, *) -> edge_index, [edge_attr],增加边以构成无向图,返回新的边,如果提供边属性则还会合并(add, mean, min, max, mul)重复的边属性,并返回。(i, j)与(j, i)被认为是重复的边
  • remove_isolated_nodes(edge_index, edge_attr=None, num_nodes=None),移除孤立节点,重新对边编号,返回(edge_index, edge_attr, node_mask),其中node_mask是节点的布尔掩码