docstr: Build a series of lookup tables used to draw samples with feature subsets identical to
  given subsets of `X` (see TabularSampler.build_sampling_lookups for details).
  
  Parameters
  ----------
  X
      Instance to be explained.
code: def _build_sampling_lookups(self, X: np.ndarray) -> None:
      """
      Build a series of lookup tables used to draw samples with feature subsets identical to
      given subsets of `X` (see TabularSampler.build_sampling_lookups for details).
  
      Parameters
      ----------
      X
          Instance to be explained.
      """
  
      lookups = [sampler.build_lookups(X) for sampler in self.samplers][
          0
      ]
      self.cat_lookup, self.ord_lookup, self.enc2feat_idx = lookups
  
imports: import copy
  from collections import OrderedDict, defaultdict
  from itertools import accumulate
  from typing import Any, Callable, DefaultDict, Dict, List, Optional, Set, Tuple, Type, Union
  import numpy
  from alibi.api.defaults import DEFAULT_DATA_ANCHOR, DEFAULT_META_ANCHOR
  from alibi.api.interfaces import Explainer, Explanation, FitMixin
  from alibi.exceptions import NotFittedError, PredictorCallError, PredictorReturnTypeError
  from alibi.utils.discretizer import Discretizer
  from alibi.utils.mapping import ohe_to_ord, ord_to_ohe
  from alibi.utils.wrappers import ArgmaxTransformer
  from .anchor_base import AnchorBaseBeam
  from .anchor_explanation import AnchorExplanation
label_desc: Use image node_id 3 for calling the AnchorTabular obj's underlying member method code with example usage: obj._build_sampling_lookups(X) without return types