docstr: test discretizer on small synthetic dataset
          
docstr_tok: ["test","discretizer","on","small","synthetic","dataset"]
code: def test_discretizer_simple(self):
      """test discretizer on small synthetic dataset"""
  
      X = np.array(
          [
              [1, 99, 43, 34],
              [1, 76, 22, 10],
              [0, 83, 11, 0],
              [0, 99, 74, 33],
              [0, 53, 40, 34],
          ]
      )
      X = pd.DataFrame(X)
      y = pd.Series([1, 0, 1, 0, 0])
  
      X_test = np.array(
          [
              [1, 50, 10, 20],
              [0, 29, 70, 10],
              [3, 80, 60, 50],
              [0, 100, 30, 10],
          ]
      )
      X_test = pd.DataFrame(X_test)
      y_test = pd.Series([1, 0, 1, 0])
  
      random.seed(12345)
      discretizer = RFDiscretizer(
          rf_model=None,
          classification=True,
          n_bins=2,
          dcols=[],
          encode="onehot",
          strategy="quantile",
          onehot_drop="if_binary",
      )
      discretizer.fit(X, y)
      Xd = discretizer.transform(X)
      Xd_test = discretizer.transform(X_test)
      Xd2 = discretizer.fit_transform(X, y)
  
      Xd_expected = pd.DataFrame(
          {
              "0_1": [1, 1, 0, 0, 0],
              "1_1": [1, 0, 1, 1, 0],
              "2_1": [1, 0, 0, 1, 0],
              "3_1": [1, 0, 0, 1, 1],
          }
      )
      Xd_test_expected = pd.DataFrame(
          {
              "0_1": [1, 0, 1, 0],
              "1_1": [0, 0, 1, 1],
              "2_1": [0, 1, 1, 0],
              "3_1": [1, 0, 1, 0],
          }
      )
  
file_path: imodels/tests/discretizer_test.py
imports: import os
  import random
  import unittest
  import numpy
  import pandas
  from imodels.discretization.discretizer import BasicDiscretizer, RFDiscretizer
label_desc: Use image node_id 2 for calling the TestRFDiscretizer obj's underlying member method code with example usage: obj.test_discretizer_simple() without return types