code: def _check_inputs_dtype(X, missing_values):
      if X.dtype.kind in ("f", "i", "u") and not isinstance(
          missing_values, numbers.Real
      ):
          raise ValueError(
              "'X' and 'missing_values' types are expected to be"
              " both numerical. Got X.dtype={} and "
              " type(missing_values)={}.".format(
                  X.dtype, type(missing_values)
              )
          )
  
imports: from ....internals import _deprecate_pos_args
  from ....common.array_descriptor import CumlArrayDescriptor
  from ....internals.array_sparse import SparseCumlArray
  from ..utils.validation import FLOAT_DTYPES
  from ..utils.validation import check_is_fitted
  from cuml.internals.mixins import AllowNaNTagMixin, SparseInputTagMixin, StringInputTagMixin
  from ..utils.skl_dependencies import BaseEstimator, TransformerMixin
  from ....thirdparty_adapters import _get_mask, _masked_column_median, _masked_column_mean, _masked_column_mode
  from cuml.internals.safe_imports import gpu_only_import_from
  import cuml
  from cuml.internals.safe_imports import gpu_only_import
  import numbers
  import warnings
  from cuml.internals.safe_imports import cpu_only_import
label_desc: Use image node_id 2 for calling a global function with example usage: _check_inputs_dtype(X, missing_values) without return types