Jak obliczyć decyle w r (z przykładami)


W statystyce decyle to liczby dzielące zbiór danych na dziesięć grup o jednakowej częstotliwości.

Pierwszy decyl to punkt, poniżej którego spada 10% wszystkich wartości danych. Drugi decyl to punkt, w którym 20% wszystkich wartości danych spada poniżej i tak dalej.

Możemy użyć następującej składni do obliczenia decyli zbioru danych w R:

 quantile(data, probs = seq (.1, .9, by = .1 ))

Poniższy przykład pokazuje, jak w praktyce wykorzystać tę funkcję.

Przykład: oblicz decyl w R

Poniższy kod pokazuje, jak utworzyć fałszywy zbiór danych zawierający 20 wartości, a następnie obliczyć wartości decylowe zbioru danych:

 #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 

Sposób interpretacji decyli jest następujący:

  • 10% wszystkich wartości danych jest mniejszych niż 63,4
  • 20% wszystkich wartości danych jest mniejszych niż 67,8 .
  • 30% wszystkich wartości danych jest mniejszych niż 76,5 .
  • 40% wszystkich wartości danych jest mniejszych niż 83,6 .
  • 50% wszystkich wartości danych jest mniejszych niż 88,5 .
  • 60% wszystkich wartości danych jest mniejszych niż 90,4 .
  • 70% wszystkich wartości danych jest mniejszych niż 92,3 .
  • 80% wszystkich wartości danych jest mniejszych niż 93,2 .
  • 90% wszystkich wartości danych jest mniejszych niż 95,2 .

Należy zauważyć, że wartość na 50. percentylu jest równa medianie wartości zbioru danych.

Przykład: umieszczanie wartości w decylach w R

Aby umieścić każdą wartość danych w decylu, możemy użyć funkcji ntile(x, ngroups) z pakietu dplyr w R.

Oto jak użyć tej funkcji dla zbioru danych utworzonego w poprzednim przykładzie:

 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

Sposób interpretacji wyniku jest następujący:

  • Wartość danych 56 mieści się w percentylu od 0% do 10%, a więc znajduje się w pierwszym decylu.
  • Wartość danych 58 mieści się w percentylu od 0% do 10%, a zatem znajduje się w pierwszym decylu.
  • Wartość danych 64 mieści się w percentylu od 10% do 20%, a więc znajduje się w drugim decylu.
  • Wartość danych 67 mieści się w percentylu od 10% do 20%, a więc znajduje się w drugim decylu.
  • Wartość danych 68 mieści się w przedziale percentyla 20% do 30%, a więc znajduje się w trzecim decylu.

I tak dalej.

Dodatkowe zasoby

Jak obliczyć percentyle w R
Jak obliczyć kwartyle w R
Jak tworzyć tabele częstości w R

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *