Skip to content
Prev 132440 / 398506 Next

median of binned values

Martin Tomko wrote:
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"