docstr: Transforms label encoded data back to categorical values
          
docstr_tok: ["Transforms","label","encoded","data","back","to","categorical","values"]
code: def label_decode(self, labelled_input):
      """Transforms label encoded data back to categorical values"""
      num_to_decode = 1
      if len(labelled_input.shape) > 1:
          num_to_decode = len(labelled_input)
      else:
          labelled_input = [labelled_input]
  
      input_instance = []
  
      for j in range(num_to_decode):
          temp = {}
          for i in range(len(labelled_input[j])):
              if (
                  self.data_interface.feature_names[i]
                  in self.data_interface.categorical_feature_names
              ):
                  enc = self.labelencoder[
                      self.data_interface.feature_names[i]
                  ]
                  val = enc.inverse_transform(
                      np.array([labelled_input[j][i]], dtype=np.int32)
                  )
                  temp[self.data_interface.feature_names[i]] = val[0]
              else:
                  temp[
                      self.data_interface.feature_names[i]
                  ] = labelled_input[j][i]
          input_instance.append(temp)
      input_instance_df = pd.DataFrame(
          input_instance, columns=self.data_interface.feature_names
      )
      return input_instance_df
  
imports: import copy
  import random
  import timeit
  import numpy
  import pandas
  from raiutils.exceptions import UserConfigValidationException
  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 19 for calling the DiceGenetic obj's underlying member method code with example usage: obj.label_decode(labelled_input) and returns: input_instance_df