code: def get_data_params(self, df_name):
      if self.global_normalization:
          data_params = self.global_data_params
      else:
          if (
              df_name in self.local_data_params.keys()
              and df_name != "__df__"
          ):
              log.debug(
                  f"Dataset name {df_name!r} found in training data_params"
              )
              data_params = self.local_data_params[df_name]
          elif self.unknown_data_normalization:
              log.debug(
                  f"Dataset name {df_name!r} is not present in valid data_params but unknown_data_normalization is \
                          True. Using global_data_params"
              )
              data_params = self.global_data_params
          else:
              raise ValueError(
                  f"Dataset name {df_name!r} missing from training data params. Set unknown_data_normalization to \
                          use global (average) normalization parameters."
              )
      return data_params
  
imports: from __future__ import annotations
  import logging
  import math
  import types
  from collections import OrderedDict
  from dataclasses import dataclass, field
  from typing import Callable, List, Optional
  from typing import OrderedDict
  from typing import Type, Union
  import numpy
  import pandas
  import torch
  from neuralprophet import df_utils, np_types, utils, utils_torch
  from neuralprophet.custom_loss_metrics import PinballLoss
label_desc: Use image node_id 2 for calling the Normalization obj's underlying member method code with example usage: obj.get_data_params(df_name) and returns: data_params