Python에서 십분위수를 계산하는 방법: 예 포함


통계에서 십분위수는 데이터 세트를 동일한 빈도의 10개 그룹으로 나누는 숫자입니다.

첫 번째 십분위수는 전체 데이터 값의 10%가 아래로 떨어지는 지점이다. 두 번째 십분위수는 전체 데이터 값의 20%가 아래로 떨어지는 지점 등입니다.

다음 구문을 사용하여 Python에서 데이터세트의 십분위수를 계산할 수 있습니다.

 import numpy as np

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

다음 예에서는 이 기능을 실제로 사용하는 방법을 보여줍니다.

예: Python에서 십분위수 계산

다음 코드는 20개의 값으로 가짜 데이터세트를 생성한 후 데이터세트의 십분위수 값을 계산하는 방법을 보여줍니다.

 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])

십분위수를 해석하는 방법은 다음과 같습니다.

  • 모든 데이터 값의 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 보다 작습니다.

출력(56)의 첫 번째 값은 단순히 데이터 세트의 최소값을 나타냅니다.

예: Python에서 십분위수에 값 배치

각 데이터 값을 십분위수에 배치하려면 pandas qcut 함수를 사용할 수 있습니다.

이전 예에서 생성한 데이터세트에 이 함수를 사용하는 방법은 다음과 같습니다.

 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

결과를 해석하는 방법은 다음과 같습니다.

  • 데이터 값 56은 백분위수 0%와 10% 사이에 있으므로 십분위수 0 에 속합니다.
  • 데이터 값 58은 백분위수 0%와 10% 사이에 있으므로 십분위수는 0 입니다.
  • 데이터 값 64는 10%와 20% 백분위수 사이에 있으므로 십분위수 1 에 속합니다.
  • 데이터 값 67은 10%와 20% 백분위수 사이에 속하므로 십분위수 1 에 속합니다.
  • 데이터 값 68은 20%와 30% 백분위수 사이에 속하므로 십분위수 2 에 속합니다.

등등.

추가 리소스

Python에서 백분위수를 계산하는 방법
Python에서 사분위수 범위를 계산하는 방법

의견을 추가하다

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다