NPGraph
- class NPGraph[source]
Bases:
Graphnumpy backed graph class with support for memmapped edge_index
- __init__(*args, ensure_sorted=False, **kwargs)[source]
Initialise graph
- Parameters:
edge_index – edge index such that
edge_index[0]lists the source andedge_index[1]the target node for each edgeedge_attr – optionally provide edge weights
num_nodes – specify number of nodes (default:
max(edge_index)+1)ensure_sorted – if
False, assume that theedge_indexinput is already sortedundir – boolean indicating if graph is directed. If not provided, the
edge_indexis checked to determine this value.
Methods
Initialise graph
adjlist neighbours of node
adj_weightedlist neighbours of node and corresponding edge weight :param node: source node
return nodes in breadth-first-search order
return nodes in breadth-first-search order
return list of edges where each edge is a tuple
(source, target)return list of edges where each edge is a tuple
(source, target, weight)from_networkxfrom_tghas_node_labelslccfind the neighbourhood of a set of source nodes
List all nodes in the largest connected component
find induced subgraph for a set of nodes
toto_networkxconvert graph to NetworkX format
Attributes
devicenodesnum_edgesnum_featuresweightedboolean indicating if graph is weighted
strengthtensor of node strength
weightsdegree- neighbourhood(nodes, hops: int = 1)[source]
find the neighbourhood of a set of source nodes
note that the neighbourhood includes the source nodes themselves
- Parameters:
nodes – indices of source nodes
hops – number of hops for neighbourhood
- Returns:
neighbourhood
- subgraph(nodes: Tensor, relabel=False, keep_x=True, keep_y=True)[source]
find induced subgraph for a set of nodes
- Parameters:
nodes – node indeces
- Returns:
subgraph
- connected_component_ids()[source]
return nodes in breadth-first-search order
- Parameters:
start – index of starting node (default: 0)
- Returns:
tensor of node indeces