code: def rank(self, **kwargs):
          
          axis = kwargs.get("axis", 0)
          numeric_only = True if axis else kwargs.get("numeric_only", False)
          func = self._prepare_method(pandas.DataFrame.rank, **kwargs)
          new_data = self._map_across_full_axis(axis, func)
          # Since we assume no knowledge of internal state, we get the columns
          # from the internal partitions.
          if numeric_only:
              new_columns = self.compute_index(1, new_data, True)
          else:
              new_columns = self.columns
          new_dtypes = pandas.Series([np.float64 for _ in new_columns], index=new_columns)
          return self.__constructor__(new_data, self.index, new_columns, new_dtypes)
docs: Computes numerical rank along axis. Equal values are set to the average.
  
          Returns:
              DataManager containing the ranks of the values along an axis.