[R] median of binned values
Chuck Cleland
ccleland at optonline.net
Wed Dec 19 10:33:11 CET 2007
Martin Tomko wrote:
> Dear list,
> I have a vector (array, table row, whatever is best) of frequency values
> for categories (or bins), and I need to find the median category.
> Trivial to do by hand, but I was wondering if there is a means to do it
> in R in an elegant way.
>
> The obvious medioan(vector) returns the median frequency for the binns,
> and that is not what I want. i.e,:
> freq
> cat1 1
> cat2 10
> cat3 100
> cat4 1000
> cat5 10000
>
> I want it to return cat5, instead of cat3.
df <- data.frame(binname = as.factor(paste("cat", 1:5, sep="")),
freq = c(1,10,100,1000,10000))
df
binname freq
1 cat1 1
2 cat2 10
3 cat3 100
4 cat4 1000
5 cat5 10000
with(df, levels(binname)[median(rep(as.numeric(binname), freq))])
[1] "cat5"
> Thanks a lot
> Martin
>
> ______________________________________________
> 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.
--
Chuck Cleland, Ph.D.
NDRI, Inc.
71 West 23rd Street, 8th floor
New York, NY 10010
tel: (212) 845-4495 (Tu, Th)
tel: (732) 512-0171 (M, W, F)
fax: (917) 438-0894
More information about the R-help
mailing list