moment
데이터의 값들을 plot할 경우 그 분포의 모양에 대한 특별한 정량적 측정치입니다. 이것은 종종 왜도와 첨도의 계수를 계산하는데 사용됩니다.
자료의 k번째 중앙모멘트(central moment)는 다음과 같이 계산됩니다.
$$m_k=\frac{1}{n} \sum^n_{i=1} (x_i-\bar{x})^k$$
scipy.stats.momnet(obj, moment=1, axis=0)
위 함수에 의해 계산됩니다.
>>> x=np.random.randint(0, 10, 1000)
>>> stats.moment(x, 1)
0.0
>>> stats.moment(x, 2)
8.1339639999999989
k-statistics
k-statistic은 $k_n$으로 표현합니다.이 통계량은 주어진 통계분포의 누적된 $k_n$의 고유한 대칭적인 비편재 추정량입니다.
즉, 정규분포와 같이 대칭분포일 경우 나타낼 수 있는 모멘트 값(통계량)을 의미합니다.
식으로 나타내면 다음과 같습니다.
$$<k_n>=k_n$$
<x>는 x의 기대값입니다. 분산의 경우 다음과 같이 나타낼 수 있지요.
var($k_r$)=<($k- k_r)^2$>
scipy.stat.kstat() 함수로 부터 이 통계량을 산출할 수 있는데 각각은 다음과 같이 계산됩니다.
$$S_r = \sum^n_{i=1} X_i^r$$
위 식으로 부터
$$k_1 = \frac{S_1}{n}$$
$$k_2=\frac{nS_2 - S_1^2}{n(n-1)}$$
$$k_3=\frac{2S^3_1-3nS_1S_2+n^2S_3}{n(n-1)(n-2)}$$
$$k_4=\frac{-6S^4_1+12nS_1^2S_2-3n(n-1)S_2^2-4n(n=1)S_1S_3+n^2(n+1)S_4}{n(n-1)(n-2)(n-3)}$$
>>> import numpy as np
>>> from scipy import stats
>>> x=np.random.randint(0, 10, 5)
>>> x
array([3, 4, 1, 3, 6])
>>> np.sum(x)/5
3.3999999999999999
>>> stats.kstat(x, 1)
3.3999999999999999
stats.kstat(x, 3)
Out[64]: 1.6000000000000001
np.sum(x**2)
Out[65]: 71
댓글
댓글 쓰기