code: def test_transform_all_multi(self, get_iris_data):
      data = get_iris_data.copy(deep=True)
      sepal_length = data["sepal length (cm)"]
      sepal_width = data["sepal width (cm)"]
      petal_length = np.array(
          [
              [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
              [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
              [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
              [0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0],
              [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0],
              [0, 0, 2, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0],
              [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 2, 2, 2, 2],
              [2, 0, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2],
              [2, 1, 2, 1, 2, 2, 0, 1, 2, 2, 2, 2, 2, 2, 2],
              [2, 2, 2, 0, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2],
          ]
      )
      petal_width = np.array(
          [
              [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
              [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
              [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
              [0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1],
              [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 1, 1, 1, 1],
              [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1],
              [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2],
              [2, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1],
              [2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 2, 2, 2, 1, 1],
              [2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2],
          ]
      )
  
      dt_multi = DecisionTreeSupervisedDiscretiserMethod(
          mode="multi",
          tree_params={"max_depth": 3, "random_state": 2020},
      )
      tree_discretiser = dt_multi.fit(
          feat_names=[
              "sepal length (cm)",
              "sepal width (cm)",
              "petal length (cm)",
              "petal width (cm)",
          ],
          dataframe=data,
          target="target",
          target_continuous=False,
      )
      output_df = tree_discretiser.transform(data)
  
      assert (
          output_df["sepal length (cm)"].values == sepal_length
      ).all()
      assert (output_df["sepal width (cm)"].values == sepal_width).all()
      assert (
          output_df["petal length (cm)"].values.reshape(-1, 15)
          == petal_length
      ).all()
      assert (
          output_df["petal width (cm)"].values.reshape(-1, 15)
          == petal_width
      ).all()
  
file_path: causalnex/tests/discretiser/test_decision_tree.py
imports: import numpy
  import pytest
  from causalnex.discretiser.discretiser_strategy import DecisionTreeSupervisedDiscretiserMethod
label_desc: Use image node_id 10 for calling the TestDecisionTree obj's underlying member method code with example usage: obj.test_transform_all_multi(get_iris_data) without return types