code: def show(self, rows: int=5,
               dataframe: pd.DataFrame=None) -> pd.DataFrame:
          
          try:
              if dataframe is not None:
                  df = dataframe
              else:
                  df = self.df
              if df is None:
                  self.warning("Dataframe is empty: nothing to show")
                  return
              num = len(df.columns.values)
          except Exception as e:
              self.err(e, self.show, "Can not show dataframe")
              return
          f = list(df)
          fds = []
          for fi in f:
              fds.append(str(fi))
          fields = ", ".join(fds)
          num_rows = len(df.index)
          self.info("The dataframe has", colors.bold(num_rows), "rows and",
                    colors.bold(num), "columns:")
          print(fields)
          return df.head(rows)
docs: Display info about the dataframe
  
          :param rows: number of rows to show, defaults to 5
          :param rows: int, optional
          :param dataframe: a pandas dataframe, defaults to None
          :param dataframe: pd.DataFrame, optional
          :return: a pandas dataframe
          :rtype: pd.DataFrame
  
          :example: ``ds.show()``