code: def get_ppi():
      train_dataset = PPIDataset(mode="train")
      val_dataset = PPIDataset(mode="valid")
      test_dataset = PPIDataset(mode="test")
      train_val_dataset = [i for i in train_dataset] + [
          i for i in val_dataset
      ]
      for idx, data in enumerate(train_val_dataset):
          data.ndata["batch"] = torch.zeros(data.num_nodes()) + idx
          data.ndata["batch"] = data.ndata["batch"].long()
  
      g = list(
          GraphDataLoader(
              train_val_dataset, batch_size=22, shuffle=True
          )
      )
  
      return (
          g,
          PPIDataset(mode="train"),
          PPIDataset(mode="valid"),
          test_dataset,
      )
  
file_path: dgl/examples/pytorch/bgrl/utils.py
imports: import copy
  import numpy
  import torch
  from dgl.data import AmazonCoBuyComputerDataset, AmazonCoBuyPhotoDataset, CoauthorCSDataset, CoauthorPhysicsDataset, PPIDataset, WikiCSDataset
  from dgl.dataloading import GraphDataLoader
  from dgl.transforms import Compose, DropEdge, FeatMask, RowFeatNormalizer
label_desc: Use image node_id 3 for calling a global function with example usage: get_ppi() and returns: g,  PPIDataset,  PPIDataset,  test_dataset