code: def setUpClass(self):
      self.data = tc.SFrame.read_csv(mushroom_dataset)
      self.data["label"] = (self.data["label"] == "p") + 20
      self.dtrain, self.dtest = self.data.random_split(0.8, seed=1)
      self.param = {
          "max_depth": 5,
          "min_loss_reduction": 1,
          "min_child_weight": 1,
      }
      self.target = "label"
      self.unpacked_features = self.data.column_names()
      self.unpacked_features.remove(self.target)
      self.features = self.unpacked_features[:]
      self.model = tc.random_forest_regression.create(
          self.dtrain,
          target=self.target,
          validation_set=self.dtest,
          **self.param,
      )
  
      self.def_opts = copy.deepcopy(_DEFAULT_OPTIONS_REGRESSION)
      self.opts = self.def_opts.copy()
      self.opts.update(self.param)
  
      # Answers
      # ------------------------------------------------------------------------
      self.get_ans = {
          "column_subsample": lambda x: self.opts["column_subsample"],
          "unpacked_features": lambda x: x == self.unpacked_features,
          "features": lambda x: x == self.features,
          "max_depth": lambda x: x == self.opts["max_depth"],
          "max_iterations": lambda x: x == self.opts["max_iterations"],
          "min_child_weight": lambda x: x
          == self.opts["min_child_weight"],
          "min_loss_reduction": lambda x: x
          == self.opts["min_loss_reduction"],
          "num_examples": lambda x: x == self.dtrain.num_rows(),
          "num_unpacked_features": lambda x: x == 22,
          "num_features": lambda x: x == 22,
          "num_trees": lambda x: x == self.opts["max_iterations"],
          "num_validation_examples": lambda x: x
          == self.dtest.num_rows(),
          "row_subsample": lambda x: x == self.opts["row_subsample"],
          "target": lambda x: x == self.target,
          "training_rmse": lambda x: x > 0,
          "training_max_error": lambda x: x > 0,
          "training_time": lambda x: x >= 0,
          "trees_json": lambda x: isinstance(x, list),
          "validation_rmse": lambda x: x > 0,
          "validation_max_error": lambda x: x > 0,
          "random_seed": lambda x: x is None,
          "progress": lambda x: isinstance(x, tc.SFrame) or (x is None),
          "metric": lambda x: x == "auto",
          "model_checkpoint_interval": lambda x: x == 5,
          "model_checkpoint_path": lambda x: x is None,
          "resume_from_checkpoint": lambda x: x is None,
          "validation_data": lambda x: isinstance(x, tc.SFrame)
          and len(x) == len(self.dtest),
          "disable_posttrain_evaluation": lambda x: x == False,
      }
      self.metrics = ["rmse", "max_error"]
      self.fields_ans = self.get_ans.keys()
  
imports: from __future__ import print_function
  from __future__ import division
  from __future__ import absolute_import
  import unittest
  import turicreate
  import math
  import uuid
  import random
  import sys
  import copy
  from turicreate.toolkits import evaluation
  from turicreate.toolkits._main import ToolkitError
  import shutil
  import numpy
  from array import array
  import os
label_desc: Use image node_id 1 for calling the RandomForestRegressionTest obj's underlying member method code with example usage: obj.setUpClass() without return types