code: def binary_data():
      n_samples, n_features, n_informative, n_classes = 200, 100, 30, 2
      X, y = make_classification(
          n_samples=n_samples,
          n_features=n_features,
          n_informative=n_informative,
          n_classes=n_classes,
          random_state=0,
      )
      X_train, X_test, y_train, y_test = train_test_split(
          X, y, test_size=0.5
      )
      return {
          "X_train": X_train,
          "y_train": y_train,
          "X_test": X_test,
          "y_test": y_test,
          "preprocessor": None,
      }
  
imports: import re
  import sys
  from copy import deepcopy
  from typing import Dict, List, Optional, Tuple, Union
  from packaging import version
  import matplotlib.pyplot
  import numpy
  import pandas
  import pytest
  from pytest_lazyfixture import lazy_fixture
  from sklearn.base import BaseEstimator
  from sklearn.datasets import make_classification
  from sklearn.ensemble import GradientBoostingClassifier
  from sklearn.exceptions import NotFittedError
  from sklearn.inspection import partial_dependence
  from sklearn.model_selection import train_test_split
  from sklearn.multioutput import MultiOutputClassifier
  from sklearn.pipeline import Pipeline
  from sklearn.utils import Bunch, shuffle
  import sklearn
  from alibi.api.defaults import DEFAULT_DATA_PD, DEFAULT_META_PD
  from alibi.api.interfaces import Explanation
  from alibi.explainers import PartialDependence, TreePartialDependence, plot_pd
  from alibi.explainers.partial_dependence import _plot_one_pd_cat, _plot_one_pd_num, _plot_two_pd_cat_cat, _plot_two_pd_num_cat, _plot_two_pd_num_num, _process_pd_ice, _sample_ice
label_desc: Use image node_id 1 for calling a global function with example usage: binary_data() and returns: dict