Допустим, у меня есть data.frame вроде:
x <- c(1:10,1:10,1:10,1:10,1:10,1:10,1:10,1:10,1:10,1:10)
df <- data.frame(x=x,y=rnorm(100))
, и я хочу пометить значения, которые отсортированы (по убыванию) в 80-м процентиле для каждого значения x (1:10).Я могу получить квантили и упорядочить данные без проблем, например:
df <- ddply(df, .(x), subset, y > quantile(y,0.8))
df <- df[with(df, order(x,-y)),]
Теперь, как я могу получить ddply, чтобы добавить столбец меток (1,2,3, ... n) вновый столбец data.frame для каждого отсортированного подмножества?Теперь я могу сделать это с помощью цикла for, считая nrow (df ["x"]), но в этом, похоже, отсутствует чувство красноречия.
Примечание. Этот вопрос является сборкой и связан с: Создание нескольких подмножеств в одном файле данных (возможно, с помощью ddply)