docs: def _nan_minmax_object(func, fill_value, value, axis=None, **kwargs):
      """ In house nanmin and nanmax for object array """
      valid_count = count(value, axis=axis)
      filled_value = fillna(value, fill_value)
      data = getattr(np, func)(filled_value, axis=axis, **kwargs)
      if not hasattr(data, 'dtype'):  # scalar case
          data = dtypes.fill_value(value.dtype) if valid_count == 0 else data
          return np.array(data, dtype=value.dtype)
      return where_method(data, valid_count != 0)