code: def load_tox21_ecfp(num_train=7200):
      """Load Tox21 datasets. Does not do train/test split"""
      # Set some global variables up top
      current_dir = os.path.dirname(os.path.realpath(__file__))
      dataset_file = os.path.join(
          current_dir, "../../datasets/tox21.csv.gz"
      )
      # Featurize Tox21 dataset
      print("About to featurize Tox21 dataset.")
      featurizer = dc.feat.CircularFingerprint(size=1024)
      tox21_tasks = [
          "NR-AR",
          "NR-AR-LBD",
          "NR-AhR",
          "NR-Aromatase",
          "NR-ER",
          "NR-ER-LBD",
          "NR-PPAR-gamma",
          "SR-ARE",
          "SR-ATAD5",
          "SR-HSE",
          "SR-MMP",
          "SR-p53",
      ]
  
      loader = dc.data.CSVLoader(
          tasks=tox21_tasks,
          smiles_field="smiles",
          featurizer=featurizer,
      )
      dataset = loader.featurize(dataset_file, shard_size=8192)
  
      # Initialize transformers
      transformers = [dc.trans.BalancingTransformer(dataset=dataset)]
  
      print("About to transform data")
      for transformer in transformers:
          dataset = transformer.transform(dataset)
  
      return tox21_tasks, dataset, transformers
  
file_path: deepchem/examples/low_data/datasets.py
imports: from __future__ import print_function
  from __future__ import division
  from __future__ import unicode_literals
  import os
  import sys
  import shutil
  import tempfile
  import numpy
  import deepchem
label_desc: Use image node_id 2 for calling a global function with example usage: load_tox21_ecfp(num_train) and returns: tox21_tasks,  dataset,  transformers