Python에서 z 점수를 계산하는 방법
통계에서 z-점수는 값이 평균 에서 얼마나 많은 표준 편차를 가지고 있는지 알려줍니다. 다음 공식을 사용하여 z-점수를 계산합니다.
z = (X – μ) / σ
금:
- X는 단일 원시 데이터 값입니다.
- μ는 모집단 평균입니다.
- σ는 모집단 표준편차입니다.
이 튜토리얼에서는 Python에서 원시 데이터 값에 대한 z-점수를 계산하는 방법을 설명합니다.
Python에서 Z 점수를 계산하는 방법
다음 구문을 사용하는 scipy.stats.zscore를 사용하여 Python에서 z-점수를 계산할 수 있습니다.
scipy.stats.zscore(a, 축=0, ddof=0, nan_policy=’전파’)
금:
- a : 데이터를 담고 있는 배열형 객체
- axis : z-점수를 계산할 축입니다. 기본값은 0입니다.
- ddof : 표준편차 계산 시 자유도를 수정합니다. 기본값은 0입니다.
- nan_policy : 입력에 nan이 포함된 경우 처리 방법. 기본값은 propagate이며 nan을 반환합니다. ‘raise’는 오류를 발생시키고 ‘omit’은 nan 값을 무시하고 계산을 수행합니다.
다음 예에서는 이 함수를 사용하여 1차원 numpy 배열, 다차원 numpy 배열 및 Pandas DataFrame에 대한 z-점수를 계산하는 방법을 보여줍니다.
Numpy 1차원 배열
1단계: 모듈을 가져옵니다.
import pandas as pd import numpy as np import scipy.stats as stats
2단계: 값 테이블을 만듭니다.
data = np.array([6, 7, 7, 12, 13, 13, 15, 16, 19, 22])
3단계: 표의 각 값에 대한 z-점수를 계산합니다.
stats.zscore(data)
[-1.394, -1.195, -1.195, -0.199, 0, 0, 0.398, 0.598, 1.195, 1.793]
각 z-점수는 개별 값이 평균에서 얼마나 많은 표준 편차를 가지고 있는지 알려줍니다. 예를 들어:
- 표에서 “6”의 첫 번째 값은 평균보다 1.394 표준편차 아래에 있습니다.
- 표에서 “13”의 다섯 번째 값은 평균과의 표준편차가 0 , 즉 평균과 같습니다.
- 표에서 “22”의 마지막 값은 평균 보다 1.793 표준편차 높습니다.
Numpy 다차원 배열
다차원 배열이 있는 경우 축 매개 변수를 사용하여 자체 배열을 기준으로 각 z-점수를 계산하도록 지정할 수 있습니다. 예를 들어 다음과 같은 다차원 배열이 있다고 가정합니다.
data = np.array([[5, 6, 7, 7, 8], [8, 8, 8, 9, 9], [2, 2, 4, 4, 5]])
다음 구문을 사용하여 각 테이블의 z-점수를 계산할 수 있습니다.
stats.zscore(data, axis=1) [[-1.569 -0.588 0.392 0.392 1.373] [-0.816 -0.816 -0.816 1.225 1.225] [-1.167 -1.167 0.5 0.5 1.333]]
각 개별 값의 Z 점수는 해당 값이 있는 테이블을 기준으로 표시됩니다. 예를 들어:
- 첫 번째 표에서 “5”의 첫 번째 값은 표 평균보다 1.159 표준편차 아래에 있습니다.
- 두 번째 표에서 “8”의 첫 번째 값은 해당 표의 평균보다 0.816 표준편차 아래에 있습니다.
- 세 번째 표에서 “2”의 첫 번째 값은 해당 표의 평균보다 1.167 표준편차 아래에 있습니다.
팬더 데이터 프레임
대신 Pandas DataFrame이 있다고 가정해 보겠습니다.
data = pd.DataFrame(np.random.randint(0, 10, size=(5, 3)), columns=['A', 'B', 'C']) data ABC 0 8 0 9 1 4 0 7 2 9 6 8 3 1 8 1 4 8 0 8
적용 함수를 사용하여 열당 개별 값의 z-점수를 계산할 수 있습니다.
data.apply(stats.zscore) ABC 0 0.659380 -0.802955 0.836080 1 -0.659380 -0.802955 0.139347 2 0.989071 0.917663 0.487713 3 -1.648451 1.491202 -1.950852 4 0.659380 -0.802955 0.487713
각 개별 값의 Z 점수는 값이 위치한 열을 기준으로 표시됩니다. 예를 들어:
- 첫 번째 열의 첫 번째 “8” 값은 해당 열의 평균값 보다 0.659 표준편차 높습니다.
- 두 번째 열의 첫 번째 “0” 값은 해당 열의 평균값보다 0.803 표준편차 낮습니다 .
- 세 번째 열의 첫 번째 “9” 값은 해당 열의 평균값 보다 0.836 표준편차 높습니다.
추가 자료:
Excel에서 Z 점수를 계산하는 방법
SPSS에서 Z 점수를 계산하는 방법
TI-84 계산기에서 Z 점수를 계산하는 방법