_대문 | 방명록 | 최근글 | 홈피소개 | 주인놈
FrontPage › Python-T-test

Contents

[-]
1 one-sample
2 two-sample
3 paired two-sample


1 one-sample #

모수(평균)를 알고 있는 경우 sample의 평균과 모수(평균)와 같은지/다른지를 검정
  • 귀무가설: 모수와 같다.
  • 대립가설: 모수와 다르다.
import numpy as np
import scipy as sp

#random number
N = 100
mu = 100
sd = 10
np.random.seed(0)
x = np.random.normal(mu, sd, N)

#histogram
import seaborn as sns
sns.distplot(x, kde=False, fit=sp.stats.norm)
plt.show()

#t-test: 1-sample
sp.stats.ttest_1samp(x, popmean=100) #모수의 평균이 100이라는 것을 알고 있는 경우

결과
t_test_1_sample.png

2 two-sample #

두 sample의 분산이 같은 경우
#two-sample t-test: 분산이 같은 경우
import numpy as np
import scipy as sp

np.random.seed(0)
x1 = np.random.normal(100, 10, 100)
x2 = np.random.normal(97, 10, 100)

sns.distplot(x1, kde=False, fit=sp.stats.norm)
sns.distplot(x2, kde=False, fit=sp.stats.norm)
plt.show()

sp.stats.ttest_ind(x1, x2, equal_var=True)

결과
t_test_two_sample_01.png

두 sample의 분산이 다른 경우
#two-sample t-test: 분산이 다른 경우
import numpy as np
import scipy as sp

np.random.seed(0)
x1 = np.random.normal(100, 10, 100)
x2 = np.random.normal(97, 5, 100)

sns.distplot(x1, kde=False, fit=sp.stats.norm)
sns.distplot(x2, kde=False, fit=sp.stats.norm)
plt.show()

sp.stats.ttest_ind(x1, x2, equal_var=False)

결과
t_test_two_sample_01.png

3 paired two-sample #

#two-sample t-test: 대응표본
import numpy as np
import scipy as sp

np.random.seed(0)
x1 = np.random.normal(100, 10, 100)
x2 = np.random.normal(97, 10, 100)

sns.distplot(x1, kde=False, fit=sp.stats.norm)
sns.distplot(x2, kde=False, fit=sp.stats.norm)
plt.show()

sp.stats.ttest_rel(x1, x2)

결과
t_test_two_sample_01.png

댓글 남기기..
이름: : 오른쪽의 새로고침을 클릭해 주세요. 새로고침
EditText : Print : Mobile : FindPage : DeletePage : LikePages : Powered by MoniWiki : Last modified 2018-04-13 23:12:52

충고는 눈과 같아 조용히 내리면 내릴수록 마음에 오래 남고 깊어진다. (C.힐티)