code: def get_type_family_raw(dtype) -> str:
      """From dtype, gets the dtype family."""
      try:
          if isinstance(dtype, pd.SparseDtype):
              dtype = dtype.subtype
          if dtype.name == "category":
              return "category"
          if "datetime" in dtype.name:
              return "datetime"
          if "string" in dtype.name:
              return "object"
          elif np.issubdtype(dtype, np.integer):
              return "int"
          elif np.issubdtype(dtype, np.floating):
              return "float"
      except Exception as err:
          logger.error(
              f"Warning: dtype {dtype} is not recognized as a valid dtype by numpy! "
              f"AutoGluon may incorrectly handle this feature..."
          )
          logger.error(err)
  
      if dtype.name in ["bool", "bool_"]:
          return "bool"
      elif dtype.name in ["str", "string", "object"]:
          return "object"
      else:
          return dtype.name
  
file_path: autogluon/common/src/autogluon/common/features/infer_types.py
imports: import logging
  from collections import defaultdict
  from typing import List
  import numpy
  import pandas
  from pandas import DataFrame, Series
label_desc: Use image node_id 1 for calling a global function with example usage: get_type_family_raw(dtype) and returns: str, str, str, str, str, dtype, str, str