[Rd] documentation for rank() (PR#7298)
dgrove at fhcrc.org
Thu Oct 21 09:30:02 CEST 2004
On Thu, 21 Oct 2004, Prof Brian Ripley wrote:
> On Wed, 20 Oct 2004, Douglas Grove wrote:
> > Oh crap. So sorry. This is my fault (obviously).
> > Prior to the new ties methods being added in 2.0.0
> > I modified the source to do this myself. So looks
> > like I forgot: (1) that my modified code was still
> > being accessed default (thought I'd removed it) and
> > (2) that I had added in the 'decreasing' argument.
> > It did seem very odd to me when I saw the undocumented
> > argument.
> > Sorry for the this faulty bug report.
> > BTW, would someone please add a 'decreasing' argument to rank.
> > It seems natural to have one, just like sort, and only
> > involves about two lines of code and a few lines of
> > editing to the help file.
> I don't think so. At the very least, each tie method needs a change, as
> may the handling of NAs. Also the writing a comprehensible help page will
> become very complex.
> What is the need? Rank works for numeric vectors, and why can't you just
> call rank(-x) or n+1-rank(x)? The reason that does not work for sort() is
> that it deals with non-numeric vectors.
As you note there isn't a need, I just am used to thinking about
ranking and sorting as being either increasing (the default) or
decreasing, having an explicit 'decreasing' option makes the
the code more transparent. It's a minor thing but as I erroneously
supposed it to be easy, it seemed worthwhile.
You're right that there would need to be a special case for at least
ties.method='first', but I think for the others just using
if (decreasing) x <- -x
should be all that is needed.
> Incidentally, we might need a `last' value for ties.method.
I don't see that my suggestion necessitates that. However one
could argue for a 'last' value in ties.method for completeness.
I personally have had no need for 'first' nor would I for 'last'.
> Brian D. Ripley, ripley at stats.ox.ac.uk
> Professor of Applied Statistics, http://www.stats.ox.ac.uk/~ripley/
> University of Oxford, Tel: +44 1865 272861 (self)
> 1 South Parks Road, +44 1865 272866 (PA)
> Oxford OX1 3TG, UK Fax: +44 1865 272595
More information about the R-devel