From: David Winsemius <dwinsemius_at_comcast.net>

Date: Sat, 1 Dec 2007 18:32:10 +0000 (UTC)

Date: Sat, 1 Dec 2007 18:32:10 +0000 (UTC)

"tom soyer" <tom.soyer_at_gmail.com> wrote in news:65cc7bdf0712010951p451a993i70da89f285d801de_at_mail.gmail.com:

> John,

*>
**> The Excel's percentrank function works like this: if one has a number,
**> x for example, and one wants to know the percentile of this number in
**> a given data set, dataset, one would type =percentrank(dataset,x) in
**> Excel to calculate the percentile. So for example, if the data set is
**> c(1:10), and one wants to know the percentile of 2.5 in the data set,
**> then using the percentrank function one would get 0.166, i.e., 2.5 is
**> in the 16.6th percentile.
**>
**> I am not sure how to program this function in R. I couldn't find it as
**> a built-in function in R either. It seems to be an obvious choice for
**> a built-in function. I am very surprised, but maybe we both missed it.
*

My nomination for a function with a similar result would be ecdf(), the empirical cumulative distribution function. It is of class "function" so efforts to index ecdf(.)[.] failed for me.

> df4$V2

[1] 1 1 1 1 1 5 6 7 9

> ecdf.V2<-ecdf(df4$V2)

> ecdf.V2(df4$V2)

[1] 0.2 0.2 0.4 0.4 0.5 0.6 0.7 0.8 1.0 0.9

1 0.0000000 1 0.0000000 3 0.2222222 3 0.2222222 4 0.4444444 5 0.5555556 6 0.6666667 7 0.7777778 10 1.0000000 9 0.8888889

(Not that I am saying that the OO.o/Excel function is what one _should_ want. Its behavior seems pathological to me.)

-- David WinsemiusReceived on Sat 01 Dec 2007 - 18:36:13 GMT

>

> On 12/1/07, John Kane <jrkrideau@yahoo.ca> wrote:

>> >> I don't see one but that means nothing. I think you >> can write such a function in a few minutes >> >> Will something like this work or am I >> missunderstanding what Excel's percentrank does ? >> >> aa <- rnorm(25); aa # data vector >> percentrank <- function(x) { >> var <- sort(x) >> p.rank <- 1:length(var)/length(var)*100 >> dd <- cbind(var,p.rank) >> } >> pr <- percentrank(aa); pr >> >> >> --- tom soyer <tom.soyer_at_gmail.com> wrote: >> >> > Hi, >> > >> > Does anyone know if R has a built-in function that >> > is equvalent to Excel's >> > percentrank, i.e., returns the rank of a value in a >> > data set as a percentage >> > of the data set? >> > >> > Thanks, >> > ______________________________________________ R-help_at_r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide http://www.R-project.org/posting-guide.html and provide commented, minimal, self-contained, reproducible code.

Archive maintained by Robert King, hosted by
the discipline of
statistics at the
University of Newcastle,
Australia.

Archive generated by hypermail 2.2.0, at Sat 01 Dec 2007 - 20:30:16 GMT.

*
Mailing list information is available at https://stat.ethz.ch/mailman/listinfo/r-help.
Please read the posting
guide before posting to the list.
*