Как посчитать децили в r (с примерами)
В статистике децили — это числа, которые делят набор данных на десять групп с одинаковой частотой.
Первый дециль — это точка, ниже которой опускаются 10% всех значений данных. Второй дециль — это точка, ниже которой 20% всех значений данных опускаются и так далее.
Мы можем использовать следующий синтаксис для расчета децилей набора данных в R:
quantile(data, probs = seq (.1, .9, by = .1 ))
В следующем примере показано, как использовать эту функцию на практике.
Пример: вычислить децили в R
Следующий код показывает, как создать поддельный набор данных с 20 значениями, а затем вычислить децилевые значения набора данных:
#create dataset data <- c(56, 58, 64, 67, 68, 73, 78, 83, 84, 88, 89, 90, 91, 92, 93, 93, 94, 95, 97, 99) #calculate deciles of dataset quantile(data, probs = seq (.1, .9, by = .1 )) 10% 20% 30% 40% 50% 60% 70% 80% 90% 63.4 67.8 76.5 83.6 88.5 90.4 92.3 93.2 95.2
Способ интерпретации децилей следующий:
- 10% всех значений данных меньше 63,4
- 20% всех значений данных меньше 67,8 .
- 30% всех значений данных меньше 76,5 .
- 40% всех значений данных меньше 83,6 .
- 50% всех значений данных меньше 88,5 .
- 60% всех значений данных меньше 90,4 .
- 70% всех значений данных меньше 92,3 .
- 80% всех значений данных меньше 93,2 .
- 90% всех значений данных меньше 95,2 .
Следует отметить, что значение 50-го процентиля равно медианному значению набора данных.
Пример: размещение значений в децилях в R
Чтобы поместить каждое значение данных в дециль, мы можем использовать функцию ntile(x, ngroups) из пакета dplyr в R.
Вот как использовать эту функцию для набора данных, который мы создали в предыдущем примере:
library (dplyr) #create dataset data <- data.frame(values=c(56, 58, 64, 67, 68, 73, 78, 83, 84, 88, 89, 90, 91, 92, 93, 93, 94, 95, 97, 99)) #place each value into a decile data$decile <- ntile(data, 10) #viewdata data values decile 1 56 1 2 58 1 3 64 2 4 67 2 5 68 3 6 73 3 7 78 4 8 83 4 9 84 5 10 88 5 11 89 6 12 90 6 13 91 7 14 92 7 15 93 8 16 93 8 17 94 9 18 95 9 19 97 10 20 99 10
Интерпретация результата следующая:
- Значение данных 56 находится между процентилем 0% и 10%, то есть оно находится в первом дециле.
- Значение данных 58 находится между процентилем 0% и 10%, то есть оно находится в первом дециле.
- Значение данных 64 находится между процентилем 10% и 20%, то есть оно находится во втором дециле.
- Значение данных 67 находится между процентилем 10% и 20%, то есть оно находится во втором дециле.
- Значение данных 68 находится между процентилем 20% и 30%, то есть оно находится в третьем дециле.
И так далее.
Дополнительные ресурсы
Как рассчитать процентили в R
Как посчитать квартили в R
Как создать таблицы частот в R