code: def add_or_remove_rows(data, nrows, starting_index=None, accounting_column=None):
      
      if nrows > 0:
          updated, added, copied = add_rows(
              data, nrows, starting_index,
              accounting_column=accounting_column)
          removed = _empty_index()
  
      elif nrows < 0:
          updated, removed = remove_rows(data, nrows, accounting_column=accounting_column)
          added, copied = _empty_index(), _empty_index()
  
      else:
          updated, added, copied, removed = \
              data, _empty_index(), _empty_index(), _empty_index()
  
      return updated, added, copied, removed
docs: Add or remove rows to/from a table. Rows are added
      for positive `nrows` and removed for negative `nrows`.
  
      Parameters
      ----------
      data : DataFrame
      nrows : float
          Number of rows to add or remove.
      starting_index : int, optional
          The starting index from which to calculate indexes for new rows.
          If not given the max + 1 of the index of `data` will be used.
          (Not applicable if rows are being removed.)
  
      Returns
      -------
      updated : pandas.DataFrame
          Table with random rows removed.
      added : pandas.Index
          New indexes of the rows that were added.
      copied : pandas.Index
          Indexes of rows that were copied. A row copied multiple times
          will have multiple entries.
      removed : pandas.Index
          Index of rows that were removed.