Как правило, чтобы применить функцию ко всем столбцам фрейма данных, мы можем использовать lapply
, который также работает с quantile
.
lapply(lifts, quantile, probs=c(0, 0.25, 0.50, 0.99))
# $large
# 0% 25% 50% 99%
# 14.400 161.675 488.450 950.506
#
# $small
# 0% 25% 50% 99%
# 0.900 30.800 43.650 97.744
Мы также можем использовать sapply
, который делает то же самое, но дает в качестве выходной матрицы.
sapply(lifts, quantile, probs=c(0, 0.25, 0.50, 0.99))
# large small
# 0% 14.400 0.900
# 25% 161.675 30.800
# 50% 488.450 43.650
# 99% 950.506 97.744
Данные
lifts <- structure(list(large = c(489.9, 734.5, 905.6, 41.9, 950.2, 73.9,
444.7, 950.8, 303.9, 539, 399.4, 429.5, 670.2, 39.1, 324.6, 829.6,
97.9, 216.6, 500.1, 364.4, 762.6, 205.7, 191.6, 128.6, 749.2,
185, 736.9, 46.9, 114.2, 774.4, 626.5, 42.5, 52.5, 724.3, 518.3,
932.7, 602.5, 14.4, 794.9, 149.7, 621.6, 674.2, 685.1, 153.9,
42.3, 487, 787.5, 351.6, 689.3, 862.3), small = c(56.5, 63.6,
49.5, 76.7, 78, 25.8, 57.8, 19.2, 27.7, 38.3, 36.4, 4.4, 89.2,
68.8, 36.1, 71.8, 69.1, 35.8, 38.2, 26.9, 95.5, 30.7, 43.2, 58.8,
44.1, 35.4, 91.2, 37.1, 99.9, 94.5, 52, 38.2, 40.1, 50.9, 81.7,
7.5, 77.5, 71.9, 70.6, 8.2, 90.1, 31.1, 3.4, 52, 0.9, 30.5, 12.7,
45.6, 34.2, 13.4)), class = "data.frame", row.names = c(NA, -50L
))