#title Python - t-test [[TableOfContents]] ==== 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이라는 것을 알고 있는 경우 }}} 결과 attachment:Python-T-test/t_test_1_sample.png ==== 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) }}} 결과 attachment:Python-T-test/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) }}} 결과 attachment:Python-T-test/t_test_two_sample_01.png ==== 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) }}} 결과 attachment:Python-T-test/t_test_two_sample_01.png