[R] Rank Function

Jim Lemon jim at bitwrit.com.au
Wed Oct 11 02:04:59 CEST 2006


Li Zhang wrote:
> Does anyone know why the two rank functions gives
> different results? I need to use the rank function in
> a "for" loop, so the sequence to be ranked is given
> values in the form of part (1). How can I use
> assignment like in part (1) to get correct ranks as in
> part (2)?
> 
> Thank You
> 
> 
> 
> Part (1)
> i<-1.94
> b<-0.95-i
> c<-1.73-i
> d<-2.62-i
> 
> y<-c(0.68,0.95,b,c,d)
> 
> y
> 0.68  0.95 -0.99 -0.21  0.68
> 
> rank(y)
> 3 5 1 2 4
> 
> Part(2)
> rank(c(0.68,0.95,-0.99,-0.21,0.68))
> 3.5 5.0 1.0 2.0 3.5
> 
You have specified the exact numbers in part(2). Try part(1) with the 
following:

rank(zapsmall(y))

zapsmall removes tiny floating point errors that are not visible with 
the default representation of numbers.

Jim



More information about the R-help mailing list