code: def graph_build_split(X, edge_index, node_mask: np.array):
      """subgraph building through spliting the selected nodes from the original graph"""
      ret_X = X
      row, col = edge_index
      edge_mask = (node_mask[row] == 1) & (node_mask[col] == 1)
      ret_edge_index = edge_index[:, edge_mask]
      return ret_X, ret_edge_index
  
imports: import copy
  import torch
  import numpy
  from scipy.special import comb
  from itertools import combinations
  import torch.nn.functional
  from torch_geometric.utils import to_networkx
  from torch_geometric.data import Data, Batch, Dataset
  from torch_geometric.loader import DataLoader
label_desc: Use image node_id 6 for calling a global function with example usage: graph_build_split(X, edge_index, node_mask) and returns: ret_X,  ret_edge_index