code: def create_node_sampler(
      cls,
      data,
      num_graphs_per_epoch: int,
      node_budget: int,
      sample_coverage_factor: int = 50,
      **kwargs,
  ) -> torch_geometric.data.GraphSAINTNodeSampler:
      """
      A simple static method for instantiating :class:`torch_geometric.data.GraphSAINTNodeSampler`
      with more explicit arguments.
  
      Arguments
      ------------
      data:
          The conventional data of integral graph for sampling.
      num_graphs_per_epoch:
          number of subgraphs to sampler per epoch.
      node_budget:
          budget of nodes to sample for one sampled subgraph.
      sample_coverage_factor:
          The average number of samples per node should be used to
          compute normalization statistics.
      **kwargs:
          Additional optional arguments of :class:`torch.utils.data.DataLoader`,
          including :obj:`batch_size` or :obj:`num_workers`.
  
      Returns
      --------
      Instance of :class:`torch_geometric.data.GraphSAINTNodeSampler`.
      """
      return torch_geometric.data.GraphSAINTNodeSampler(
          data,
          node_budget,
          num_graphs_per_epoch,
          sample_coverage_factor,
          log=False,
          **kwargs,
      )
  
imports: import torch_geometric
label_desc: Use image node_id 1 for calling the GraphSAINTSamplerFactory obj's underlying member method code with example usage: obj.create_node_sampler(cls, data, num_graphs_per_epoch, node_budget, sample_coverage_factor) and returns: torch_geometric