Python에서 절대 중앙값 편차를 계산하는 방법


중앙값 절대 편차는 데이터 세트의 관측치 분포를 측정합니다.

이는 표준 편차 및 분산과 같은 다른 분산 측정값보다 이상치의 영향을 덜 받기 때문에 특히 유용한 측정값입니다.

절대 중앙값 편차(종종 MAD로 약칭)를 계산하는 공식은 다음과 같습니다.

MAD = 중앙값(|x i – x m |)

금:

  • x i : 데이터세트의 i번째
  • x m : 데이터 세트의 중앙값

다음 예에서는 statsmodels mad 함수를 사용하여 Python에서 중앙값 절대 편차를 계산하는 방법을 보여줍니다.

예 1: 테이블의 MAD 계산

다음 코드는 Python에서 단일 NumPy 배열의 절대 편차 중앙값을 계산하는 방법을 보여줍니다.

 import numpy as np
from statsmodels import robust

#define data
data = np. array ([1, 4, 4, 7, 12, 13, 16, 19, 22, 24])

#calculate MAD
robust. mad (data)

11.1195

데이터 세트의 절대 편차 중앙값은 11.1195 입니다.

MAD를 계산하는 데 사용되는 공식은 결과를 약 0.67배로 조정하여 정규 분포를 가정하여 표준 편차 의 강력한 추정치를 계산한다는 점에 유의하는 것이 중요합니다.

이 배율 인수를 사용하지 않으려면 다음과 같이 c = 1로 설정하면 됩니다.

 #calculate MAD without scaling factor
robust. mad (data, c=1)

7.5

예 2: DataFrame에 대한 MAD 계산

다음 코드는 Pandas DataFrame의 단일 열에 대해 MAD를 계산하는 방법을 보여줍니다.

 #make this example reproducible
n.p. random . seeds (1)

#create pandas DataFrame
data = pd. DataFrame ( np.random.randint (0,10,size=(5,3)),columns = [' A ',' B ',' C '])

#view DataFrame
data

        A B C
0 5 8 9
1 5 0 0
2 1 7 6
3 9 2 4
4 5 2 4

#calculate MAD for column B
data[[' B ']]. apply (robust. mad )

B 2.965204
dtype:float64

B 열의 절대 중앙값 편차는 2.965204 입니다.

유사한 구문을 사용하여 Pandas DataFrame의 여러 열에 대한 MAD를 계산할 수 있습니다.

 #calculate MAD for all columns
data[[' A ',' B ',' C ']]. apply (robust. mad )

At 0.000000
B 2.965204
C 2.965204
dtype:float64

절대 중앙값 편차는 A열의 경우 0 , B열의 경우 2.965204 , C열의 경우 2.965204입니다 .

추가 리소스

Python에서 MAPE를 계산하는 방법
Python에서 SMape를 계산하는 방법
Python에서 RMSE를 계산하는 방법

의견을 추가하다

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