docs: def _maybe_null_out(result, axis, mask, min_count=1):
      """
      xarray version of pandas.core.nanops._maybe_null_out
      """
      if hasattr(axis, '__len__'):  # if tuple or list
          raise ValueError('min_count is not available for reduction '
                           'with more than one dimensions.')
  
      if axis is not None and getattr(result, 'ndim', False):
          null_mask = (mask.shape[axis] - mask.sum(axis) - min_count) < 0
          if null_mask.any():
              dtype, fill_value = dtypes.maybe_promote(result.dtype)
              result = result.astype(dtype)
              result[null_mask] = fill_value
  
      elif getattr(result, 'dtype', None) not in dtypes.NAT_TYPES:
          null_mask = mask.size - mask.sum()
          if null_mask < min_count:
              result = np.nan
  
      return result