Итак, у меня есть набор данных, который выглядит примерно так:
df <- structure(list(location_id = c(7451, 7451, 7451, 7451, 7451,
7451, 7451, 7451, 7451, 7451, 7451, 7451, 7451, 7452, 7452, 7452,
7452, 7452, 7452, 7452, 7452, 7452, 7452, 7452, 7452), score = c(55.34,
14.9, 35.13, 6.65, 35.34, 5.86, 7.1, 42.84, 36.57, 6.51, 67.87,
30.75, 52.29, 39.02, 37.58, 35.45, 11.22, 6.68, 9.77, 20.15,
18.61, 32.96, 54.31, 23.79, 9.45)), row.names = c(NA, 25L), class = "data.frame")
Теперь я знаю, как получить квантильные результаты, это достаточно просто:
quantile(df$score)
Но что я пытаюсь сделать, это преобразовать квантили в имена столбцов, сгруппированных по location_id
. Таким образом, окончательный результат будет выглядеть примерно так:
+-------------+------+-------+-------+-------+-------+
| location_id | 0% | 25% | 50% | 75% | 100% |
+-------------+------+-------+-------+-------+-------+
| 7451 | 5.86 | 7.1 | 35.13 | 42.84 | 67.87 |
| 7452 | 6.68 | 10.86 | 21.97 | 35.98 | 54.31 |
+-------------+------+-------+-------+-------+-------+