1

たとえば、次のプロットがあるとします。

library(ggplot2)
df = diamonds
dfs = df[sample(nrow(df), 100, replace = FALSE),]
ggplot(dfs, aes(x = carat)) +
    geom_bar(breaks = seq(0,2, by = 0.5), colour = 'white')

cut各ビンの最も一般的な、または平均depth、または中央値price(など)を取得する最も迅速でエレガントな方法は何ですか?

4

1 に答える 1

2
df <- diamonds
set.seed(42)
dfs <- df[sample(nrow(df), 100, replace = FALSE),]

library(data.table)

DT <- as.data.table(dfs)
DT[,bins:=findInterval(carat,seq(0,2, by = 0.5))]
setkey(DT,bins)

#most common cut
DT[,names(which.max(table(cut))),by=bins]

#   bins      V1
#1:    1   Ideal
#2:    2 Premium
#3:    3   Ideal
#4:    4 Premium
#5:    5   Ideal

#note that there is a carat==2.01, which you did not plot
于 2013-03-15T12:12:16.240 に答える