code: def standardize(table, with_std=True):
      
      if isinstance(table, pandas.DataFrame):
          cat_columns = table.select_dtypes(include=['category']).columns
      else:
          cat_columns = []
  
      new_frame = _apply_along_column(table, standardize_column, with_std=with_std)
  
      # work around for apply converting category dtype to object
      # https://github.com/pydata/pandas/issues/9573
      for col in cat_columns:
          new_frame[col] = table[col].copy()
  
      return new_frame
docs: Perform Z-Normalization on each numeric column of the given table.
  
      Parameters
      ----------
      table : pandas.DataFrame or numpy.ndarray
          Data to standardize.
  
      with_std : bool, optional, default: True
          If ``False`` data is only centered and not converted to unit variance.
  
      Returns
      -------
      normalized : pandas.DataFrame
          Table with numeric columns normalized.
          Categorical columns in the input table remain unchanged.