code: def load_data_planetoid(
      name,
      path,
      splits_path=None,
      row_normalize=False,
      data_container_class=PlanetoidDataset,
  ):
      """Load Planetoid data."""
      if splits_path is None:
          # Load from file in Planetoid format.
          (
              adj,
              features,
              _,
              _,
              _,
              train_mask,
              val_mask,
              test_mask,
              labels,
          ) = load_from_planetoid_files(name, path)
      else:
          # Otherwise load from a path where we saved a pickle with random splits.
          logging.info("Loading from splits path: %s", splits_path)
          (
              adj,
              features,
              _,
              _,
              _,
              train_mask,
              val_mask,
              test_mask,
              labels,
          ) = pickle.load(open(splits_path, "rb"))
  
      return data_container_class.build_from_adjacency_matrix(
          name,
          adj,
          features,
          train_mask,
          val_mask,
          test_mask,
          labels,
          row_normalize=row_normalize,
      )
  
file_path: neural-structured-learning/research/gam/gam/data/loaders.py
imports: from __future__ import absolute_import
  from __future__ import division
  from __future__ import print_function
  import json
  import logging
  import os
  import pickle
  import sys
  from .dataset import Dataset
  from .dataset import PlanetoidDataset
  import networkx
  import numpy
  from .preprocessing import convert_image
  from .preprocessing import split_train_val_unlabeled
  from scipy import sparse
  import tensorflow_datasets
label_desc: Use image node_id 4 for calling a global function with example usage: load_data_planetoid(name, path, splits_path, row_normalize, data_container_class) and returns: data_container_class