code: def _factorize_array(
      values, na_sentinel=-1, size_hint=None, na_value=None
  ):
      """Factorize an array-like to labels and uniques.
  
      This doesn't do any coercion of types or unboxing before factorization.
  
      Parameters
      ----------
      values : ndarray
      na_sentinel : int, default -1
      size_hint : int, optional
          Passsed through to the hashtable's 'get_labels' method
      na_value : object, optional
          A value in `values` to consider missing. Note: only use this
          parameter when you know that you don't have any values pandas would
          consider missing in the array (NaN for float data, iNaT for
          datetimes, etc.).
  
      Returns
      -------
      labels, uniques : ndarray
      """
      (hash_klass, _), values = _get_data_algo(values, _hashtables)
  
      table = hash_klass(size_hint or len(values))
      uniques, labels = table.factorize(
          values, na_sentinel=na_sentinel, na_value=na_value
      )
  
      labels = ensure_platform_int(labels)
      return labels, uniques
  
imports: from __future__ import division
  from textwrap import dedent
  from warnings import catch_warnings, simplefilter, warn
  import numpy
  from pandas._libs import algos, hashtable, lib
  from pandas._libs.tslib import iNaT
  from pandas.util._decorators import Appender, Substitution, deprecate_kwarg
  from pandas.core.dtypes.cast import construct_1d_object_array_from_listlike, maybe_promote
  from pandas.core.dtypes.common import ensure_float64, ensure_int64, ensure_object, ensure_platform_int, ensure_uint64, is_array_like, is_bool_dtype, is_categorical_dtype, is_complex_dtype, is_datetime64_any_dtype, is_datetime64tz_dtype, is_datetimelike, is_extension_array_dtype, is_float_dtype, is_integer_dtype, is_interval_dtype, is_list_like, is_numeric_dtype, is_object_dtype, is_period_dtype, is_scalar, is_signed_integer_dtype, is_sparse, is_timedelta64_dtype, is_unsigned_integer_dtype, needs_i8_conversion
  from pandas.core.dtypes.generic import ABCIndex, ABCIndexClass, ABCSeries
  from pandas.core.dtypes.missing import isna, na_value_for_dtype
  from pandas.core import common
label_desc: Use image node_id 9 for calling a global function with example usage: _factorize_array(values, na_sentinel, size_hint, na_value) and returns: labels,  uniques