code: def find_prototypes(self, row_number):
      # get training data
      data, Z = self.z_train_good(row_number)
      # get prototypes
      explainer = ProtodashExplainer()
      try:
          (W, S, setValues) = explainer.explain(
              Z, data, m=10, kernelType="other", sigma=5
          )
      except:
          (W, S, setValues) = explainer.explain(
              Z, data, m=10, kernelType="other", sigma=5
          )  # Guassian gives an error.
  
      # make a dataframe
  
      dfs = pd.DataFrame.from_records(data[S, 0:].astype("double"))
      dfs.columns = self.actual_variables
      dfs["Weight(%)"] = (
          np.around(W, 10) / np.sum(np.around(W, 10))
      ) * 100
      dfs = self.decode_categorical_var(dfs)
  
      return dfs
  
file_path: explainx/lib/protodash.py
imports: from imports import *
  from encode_decode_cat_col import *
  from rescale_numeric_feature import *
  from PDASH import ProtodashExplainer
  from PDASH_utils import *
label_desc: Use image node_id 7 for calling the protodash obj's underlying member method code with example usage: obj.find_prototypes(row_number) and returns: dfs