class_docstr: Accessor object for categorical properties of the Series values.
  
  Examples
  --------
  >>> s = ps.Series(list("abbccc"), dtype="category")
  >>> s  # doctest: +SKIP
  0    a
  1    b
  2    b
  3    c
  4    c
  5    c
  dtype: category
  Categories (3, object): ['a', 'b', 'c']
  
  >>> s.cat.categories
  Index(['a', 'b', 'c'], dtype='object')
  
  >>> s.cat.codes
  0    0
  1    1
  2    1
  3    2
  4    2
  5    2
  dtype: int8
class_docstr_tok: ["Accessor","object","for","categorical","properties","of","the","Series","values",".","Examples","--","--","--","--",">",">",">","s","=","ps.Series","(","list","(","``","abbccc","''",")",",","dtype=","''","category","''",")",">",">",">","s","#","doctest",":","+SKIP","0","a","1","b","2","b","3","c","4","c","5","c","dtype",":","category","Categories","(","3",",","object",")",":","[","'","a","'",",","'","b","'",",","'","c","'","]",">",">",">","s.cat.categories","Index","(","[","'","a","'",",","'","b","'",",","'","c","'","]",",","dtype='object","'",")",">",">",">","s.cat.codes","0","0","1","1","2","1","3","2","4","2","5","2","dtype",":","int8"]
code: def _dtype(self) -> CategoricalDtype:
      return cast(CategoricalDtype, self._data.dtype)
  
imports: from typing import Any, Callable, List, Optional, Union, TYPE_CHECKING, cast
  import pandas
  from pandas.api.types import CategoricalDtype, is_dict_like, is_list_like
  from pyspark.pandas.internal import InternalField
  from pyspark.pandas.data_type_ops.categorical_ops import _to_cat
  from pyspark.sql import functions
  from pyspark.sql.types import StructField
label_desc: Use image node_id 2 for calling the CategoricalAccessor obj's underlying member method code with example usage: obj._dtype() and returns: cast