code: def rename(opts = {})
        if opts[:rows]
          opts[:rows] = opts[:rows][0,nrows]
          opts[:rows] += row_labels[opts[:rows].size, nrows]
        end
  
        if opts[:cols]
          opts[:cols] = opts[:cols][0,ncols]
          opts[:cols] += col_labels[opts[:cols].size, ncols]
        end
  
        @row_labels = opts[:rows] if opts[:rows]
        @col_labels = opts[:cols] if opts[:cols]
      end
docs: Renames the row and column labels
  
     sheet.rename(rows: ['Row 1', 'Row 2'], cols: ['Col 1', 'Col 2'])
  
   If the provided rows and columns are larger than the spread sheet's rows
   and columns then only the respective row and column values are used. If
   the row and column labels are fewer than the respective row and column
   sizes the old labels are left untouched for the missing new labels