code: def load_file(self, fileName="Retention.csv"):
      """Open dataset file and populate X, Y, and E
  
      Args:
          fileName (String) : filename of dataset, a structured (CSV) dataset where
  
              - The first N-2 columns are the features (X).
              - The next to last column is the label (Y) {0, 1}
              - The last column gives the explanations (E) {0, 1, ..., MaxE}.  We assume the explanation space
                is dense, i.e., if there are MaxE+1 unique explanations, they will be given IDs from 0 .. MaxE
              - first row contains header information for each column and should be "Y" for labels and "E" for explanations
              - each row is an instance
      Returns:
          tuple:
              * **X** -- list of features vectors
              * **Y** -- list of labels
              * **E** -- list of explanations
      """
      self._filepath = os.path.join(self._dirpath, fileName)
  
      try:
          data = pd.read_csv(self._filepath)
          X = data.iloc[
              :, :-2
          ]  # Choose all rows and all cols, except for the last 2 cols
          Y = data["Y"]  # Choose col with header 'Y'
          E = data["E"]  # Choose col with header 'E'
  
          return X, Y, E
  
      except IOError as err:
          print("IOError: {}".format(err))
          sys.exit(1)
  
imports: import os, sys
  import pandas
label_desc: Use image node_id 2 for calling the TEDDataset obj's underlying member method code with example usage: obj.load_file(fileName) and returns: X,  Y,  E