docstr: Init method
  
  :param data_interface: an interface class to access data related params.
  :param model_interface: an interface class to access trained ML model.
docstr_tok: ["Init","method",":","param","data_interface",":","an","interface","class","to","access","data","related","params",".",":","param","model_interface",":","an","interface","class","to","access","trained","ML","model","."]
code: def __init__(self, data_interface, model_interface):
      """Init method
  
      :param data_interface: an interface class to access data related params.
      :param model_interface: an interface class to access trained ML model.
      """
      super().__init__(
          data_interface
      )  # initiating data related parameters
  
      self.model = model_interface
      self.model.load_model()  # loading pickled trained model if applicable
      self.model.transformer.feed_data_params(data_interface)
      self.model.transformer.initialize_transform_func()
  
      self.precisions = self.data_interface.get_decimal_precisions(
          output_type="dict"
      )
      if self.data_interface.outcome_name in self.precisions:
          self.outcome_precision = [
              self.precisions[self.data_interface.outcome_name]
          ]
      else:
          self.outcome_precision = 0
  
file_path: DiCE/dice_ml/explainer_interfaces/dice_random.py
imports: import random
  import timeit
  import numpy
  import pandas
  from dice_ml import diverse_counterfactuals
  from dice_ml.constants import ModelTypes
  from dice_ml.explainer_interfaces.explainer_base import ExplainerBase
label_desc: Use image node_id 1 to create a new DiceRandom object from inherited base classes: ExplainerBase with example: obj = DiceRandom(data_interface, model_interface)