Cara menghitung desil dengan python: dengan contoh


Dalam statistik, desil adalah angka yang membagi kumpulan data menjadi sepuluh kelompok dengan frekuensi yang sama.

Desil pertama adalah titik di mana 10% dari seluruh nilai data berada di bawahnya. Desil kedua adalah titik di mana 20% dari seluruh nilai data berada di bawahnya, dan seterusnya.

Kita dapat menggunakan sintaks berikut untuk menghitung desil suatu kumpulan data dengan Python:

 import numpy as np

n.p. percentile (var, np. arange (0, 100, 10))

Contoh berikut menunjukkan cara menggunakan fungsi ini dalam praktiknya.

Contoh: menghitung desil dengan Python

Kode berikut menunjukkan cara membuat dataset palsu dengan 20 nilai dan kemudian menghitung nilai desil dari dataset tersebut:

 import numpy as np

#createdata
data = np. array ([56, 58, 64, 67, 68, 73, 78, 83, 84, 88,
                 89, 90, 91, 92, 93, 93, 94, 95, 97, 99])

#calculate deciles of data
n.p. percentile (data, np. arange (0, 100, 10))

array([56., 63.4, 67.8, 76.5, 83.6, 88.5, 90.4, 92.3, 93.2, 95.2])

Cara menafsirkan desil adalah sebagai berikut:

  • 10% dari seluruh nilai data kurang dari 63,4
  • 20% dari seluruh nilai data kurang dari 67,8 .
  • 30% dari seluruh nilai data kurang dari 76,5 .
  • 40% dari seluruh nilai data kurang dari 83,6 .
  • 50% dari seluruh nilai data kurang dari 88,5 .
  • 60% dari seluruh nilai data kurang dari 90,4 .
  • 70% dari seluruh nilai data kurang dari 92,3 .
  • 80% dari seluruh nilai data kurang dari 93,2 .
  • 90% dari seluruh nilai data kurang dari 95,2 .

Perhatikan bahwa nilai pertama dari keluaran (56) hanya menunjukkan nilai minimum kumpulan data.

Contoh: Menempatkan Nilai dalam Desil dengan Python

Untuk menempatkan setiap nilai data dalam satu desil, kita dapat menggunakan fungsi pandas qcut .

Berikut cara menggunakan fungsi ini untuk dataset yang kita buat pada contoh sebelumnya:

 import pandas as pd

#create data frame
df = pd. DataFrame ({' values ': [56, 58, 64, 67, 68, 73, 78, 83, 84, 88,
                              89, 90, 91, 92, 93, 93, 94, 95, 97, 99]})

#calculate decile of each value in data frame
df[' Decile '] = pd. qcut (df[' values '], 10, labels= False )

#display data frame
df

	values Decile
0 56 0
1 58 0
2 64 1
3 67 1
4 68 2
5 73 2
6 78 3
7 83 3
8 84 4
9 88 4
10 89 5
11 90 5
12 91 6
13 92 6
14 93 7
15 93 7
16 94 8
17 95 8
18 97 9
19 99 9

Cara menafsirkan hasilnya adalah sebagai berikut:

  • Nilai data 56 berada di antara persentil 0% dan 10%, sehingga berada pada desil 0 .
  • Nilai data 58 berada di antara persentil 0% dan 10%, sehingga berada pada desil 0 .
  • Nilai data 64 berada di antara persentil 10% dan 20% sehingga berada pada desil 1 .
  • Nilai data 67 berada di antara persentil 10% dan 20%, sehingga masuk ke dalam desil 1 .
  • Nilai data 68 berada di antara persentil 20% dan 30%, sehingga masuk ke dalam desil 2 .

Dan seterusnya.

Sumber daya tambahan

Cara menghitung persentil dengan Python
Cara menghitung rentang interkuartil dengan Python

Tambahkan komentar

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *