code: def data_synthetic_nd(data_shape):
      n_samples, input_dim = data_shape
      X_ref = (
          np.random.default_rng(0).standard_normal(
              size=data_shape, dtype=FLOAT
          )
          * 0.5
      )
      X_ref[:, :2] = (
          np.random.default_rng(0)
          .choice(a=[0, 1, 2], size=(n_samples, 2), p=[0.5, 0.3, 0.2])
          .astype(INT)
      )
      X_h0 = (
          np.random.default_rng(1).standard_normal(
              size=data_shape, dtype=FLOAT
          )
          * 0.5
      )
      X_h0[:, :2] = (
          np.random.default_rng(1)
          .choice(a=[0, 1, 2], size=(n_samples, 2), p=[0.5, 0.3, 0.2])
          .astype(INT)
      )
      return X_ref, X_h0
  
file_path: alibi-detect/alibi_detect/saving/tests/datasets.py
imports: import numpy
  import pytest
  from alibi_testing.data import get_movie_sentiment_data
  from pytest_cases import parametrize
  from requests import RequestException
label_desc: Use image node_id 1 for calling the MixedData obj's underlying member method code with example usage: obj.data_synthetic_nd(data_shape) and returns: X_ref,  X_h0