class_docstr: Array of integer (optional missing) values.
  
  .. versionadded:: 0.24.0
  
  .. warning::
  
     IntegerArray is currently experimental, and its API or internal
     implementation may change without warning.
  
  We represent an IntegerArray with 2 numpy arrays:
  
  - data: contains a numpy integer array of the appropriate dtype
  - mask: a boolean array holding a mask on the data, True is missing
  
  To construct an IntegerArray from generic array-like input, use
  :func:`pandas.array` with one of the integer dtypes (see examples).
  
  See :ref:`integer_na` for more.
  
  Parameters
  ----------
  values : numpy.ndarray
      A 1-d integer-dtype array.
  mask : numpy.ndarray
      A 1-d boolean-dtype array indicating missing values.
  copy : bool, default False
      Whether to copy the `values` and `mask`.
  
  Returns
  -------
  IntegerArray
  
  Examples
  --------
  Create an IntegerArray with :func:`pandas.array`.
  
  >>> int_array = pd.array([1, None, 3], dtype=pd.Int32Dtype())
  >>> int_array
  <IntegerArray>
  [1, NaN, 3]
  Length: 3, dtype: Int32
  
  String aliases for the dtypes are also available. They are capitalized.
  
  >>> pd.array([1, None, 3], dtype='Int32')
  <IntegerArray>
  [1, NaN, 3]
  Length: 3, dtype: Int32
  
  >>> pd.array([1, None, 3], dtype='UInt16')
  <IntegerArray>
  [1, NaN, 3]
  Length: 3, dtype: UInt16
docstr: Returns a Series containing counts of each category.
  
  Every category will have an entry, even those with a count of 0.
  
  Parameters
  ----------
  dropna : boolean, default True
      Don't include counts of NaN.
  
  Returns
  -------
  counts : Series
  
  See Also
  --------
  Series.value_counts
docstr_tok: ["Returns","a","Series","containing","counts","of","each","category",".","Every","category","will","have","an","entry",",","even","those","with","a","count","of","0",".","Parameters","--","--","--","--","--","dropna",":","boolean",",","default","True","Do","n't","include","counts","of","NaN",".","Returns","--","--","--","-","counts",":","Series","See","Also","--","--","--","--","Series.value_counts"]
code: def value_counts(self, dropna=True):
      """
      Returns a Series containing counts of each category.
  
      Every category will have an entry, even those with a count of 0.
  
      Parameters
      ----------
      dropna : boolean, default True
          Don't include counts of NaN.
  
      Returns
      -------
      counts : Series
  
      See Also
      --------
      Series.value_counts
  
      """
  
      from pandas import Index, Series
  
      # compute counts on the data with no nans
      data = self._data[~self._mask]
      value_counts = Index(data).value_counts()
      array = value_counts.values
  
      # TODO(extension)
      # if we have allow Index to hold an ExtensionArray
      # this is easier
      index = value_counts.index.astype(object)
  
      # if we want nans, count the mask
      if not dropna:
          # TODO(extension)
          # appending to an Index *always* infers
          # w/o passing the dtype
          array = np.append(array, [self._mask.sum()])
          index = Index(
              np.concatenate(
                  [index.values, np.array([np.nan], dtype=object)]
              ),
              dtype=object,
          )
  
      return Series(array, index=index)
  
imports: import copy
  import sys
  import warnings
  import numpy
  from pandas._libs import lib
  from pandas.compat import range, set_function_name, string_types
  from pandas.util._decorators import cache_readonly
  from pandas.core.dtypes.base import ExtensionDtype
  from pandas.core.dtypes.cast import astype_nansafe
  from pandas.core.dtypes.common import is_bool_dtype, is_float, is_float_dtype, is_integer, is_integer_dtype, is_list_like, is_object_dtype, is_scalar
  from pandas.core.dtypes.dtypes import register_extension_dtype
  from pandas.core.dtypes.generic import ABCIndexClass, ABCSeries
  from pandas.core.dtypes.missing import isna, notna
  from pandas.core import nanops
  from pandas.core.arrays import ExtensionArray, ExtensionOpsMixin
  from pandas.core.tools.numeric import to_numeric
label_desc: Use image node_id 21 for calling the IntegerArray obj's underlying member method code with example usage: obj.value_counts(dropna) and returns: Series