[R] Relative ranking by a factor
jiho.han
jiho.han at yahoo.com
Thu Feb 22 04:18:50 CET 2007
Hi, R experts-
I am trying to create a function that returns a quintile (or decile) ranking
of a variable controlled by a factor. For example, suppose there are 10
people each in class A (1st graders) and class B (2nd graders). If you want
to calculate quintile rank for each class, how would you do that?
Right now, I create the following function and use it with "by" function.
This way works ok except that it's getting slow when the data.frame is
really really large.
rank.group = function (x, ng) {
y = quantile(x, seq(0,1,length.out=ng+1), na.rm=T)
z = cut( x, y, include.lowest = T); z = as.numeric(z)
return(z) }
Hope there's a faster way to rank the variable as in SAS.
Thanks for your help.
--
View this message in context: http://www.nabble.com/Relative-ranking-by-a-factor-tf3270737.html#a9093712
Sent from the R help mailing list archive at Nabble.com.
More information about the R-help
mailing list