假设两个正态总体分别为: X ∼ N ( μ 1 , σ 1 2 ) X\sim N(\mu_1, \sigma_1^2) X∼N(μ1,σ12)和 Y ∼ N ( μ 2 , σ 2 2 ) Y\sim N(\mu_2, \sigma_2^2) Y∼N(μ2,σ22). X 1 , . . . , X n X_1,...,X_n X1,...,Xn为来自正态总体X的样本; Y 1 , . . . , Y n Y_1,...,Y_n Y1,...,Yn为来自正态总体Y的样本。两个样本相互独立。并记 X ‾ , Y ‾ , S 1 2 , S 2 2 \overline X, \overline Y, S_1^2, S_2^2 X,Y,S12,S22分别为两样本的均值和方差。
1. σ 1 2 , σ 2 2 \sigma_1^2, \sigma_2^2 σ12,σ22已知
该情形下的检验统计量为:
X
‾
−
Y
‾
σ
1
2
n
1
+
σ
2
2
n
2
∼
N
(
0
,
1
)
\frac{\overline X - \overline Y}{\sqrt{\frac{\sigma_1^2}{n_1}+\frac{\sigma_2^2}{n_2}}}\sim N(0, 1)
n1σ12+n2σ22X−Y∼N(0,1)
1.1. 双边假设检验
假设形式:
H
0
:
μ
1
−
μ
2
=
0
H
1
:
μ
1
−
μ
2
≠
0
H_0: \mu_1-\mu_2 =0 \quad H_1:\mu_1-\mu_2\neq 0
H0:μ1−μ2=0H1:μ1−μ2=0
拒绝域为:
∣
z
∣
=
∣
X
‾
−
Y
‾
σ
1
2
n
1
+
σ
2
2
n
2
∣
≥
z
α
/
2
|z|=|\frac{\overline X - \overline Y}{\sqrt{\frac{\sigma_1^2}{n_1}+\frac{\sigma_2^2}{n_2}}}|\ge z_{\alpha/2}
∣z∣=∣n1σ12+n2σ22X−Y∣≥zα/2
p值为:
p
v
a
l
=
P
{
∣
Z
∣
≥
∣
z
0
∣
}
pval=P\{|Z| \ge |z_0|\}
pval=P{∣Z∣≥∣z0∣}
1.2. 左侧检验
假设形式:
H
0
:
μ
1
−
μ
2
≥
0
H
1
:
μ
1
−
μ
2
<
0
H_0: \mu_1-\mu_2\ge0 \quad H_1:\mu_1-\mu_2\lt0
H0:μ1−μ2≥0H1:μ1−μ2<0
拒绝域为:
z
=
X
‾
−
Y
‾
σ
1
2
n
1
+
σ
2
2
n
2
≤
−
z
α
z=\frac{\overline X - \overline Y}{\sqrt{\frac{\sigma_1^2}{n_1}+\frac{\sigma_2^2}{n_2}}}\le-z_\alpha
z=n1σ12+n2σ22X−Y≤−zα
p值为:
p
v
a
l
=
P
{
Z
≤
z
0
}
pval=P\{Z \le z_0\}
pval=P{Z≤z0}
1.3. 右侧检验
假设形式:
H
0
:
μ
1
−
μ
2
≤
0
H
1
:
μ
1
−
μ
2
>
0
H_0: \mu_1-\mu_2\le0 \quad H_1:\mu_1-\mu_2\gt0
H0:μ1−μ2≤0H1:μ1−μ2>0
拒绝域为:
z
=
X
‾
−
Y
‾
σ
1
2
n
1
+
σ
2
2
n
2
≥
z
α
z=\frac{\overline X - \overline Y}{\sqrt{\frac{\sigma_1^2}{n_1}+\frac{\sigma_2^2}{n_2}}}\ge z_\alpha
z=n1σ12+n2σ22X−Y≥zα
p值为:
p
v
a
l
=
P
{
Z
≥
z
0
}
pval=P\{Z \ge z_0\}
pval=P{Z≥z0}
2. σ 1 2 = σ 2 2 = σ 2 \sigma_1^2=\sigma_2^2=\sigma^2 σ12=σ22=σ2但未知
该情形下的检验统计量为:
X
‾
−
Y
‾
S
w
1
n
1
+
1
n
2
∼
t
(
n
1
+
n
2
−
2
)
\frac{\overline X - \overline Y}{S_w\sqrt{\frac{1}{n_1}+\frac{1}{n_2}}}\sim t(n_1+n_2-2)
Swn11+n21X−Y∼t(n1+n2−2)
上式中
s
w
2
=
(
n
1
−
1
)
s
1
2
+
(
n
2
−
1
)
s
2
2
n
1
+
n
2
−
2
s_w^2=\frac{(n_1-1)s_1^2 +(n_2-1)s_2^2}{n_1+n_2-2}
sw2=n1+n2−2(n1−1)s12+(n2−1)s22
2.1. 双边假设检验
假设形式:
H
0
:
μ
1
−
μ
2
=
0
H
1
:
μ
1
−
μ
2
≠
0
H_0: \mu_1-\mu_2 =0 \quad H_1:\mu_1-\mu_2\neq 0
H0:μ1−μ2=0H1:μ1−μ2=0
拒绝域为:
∣
t
∣
=
∣
X
‾
−
Y
‾
S
w
1
n
1
+
1
n
2
∣
≥
t
α
/
2
(
n
1
+
n
2
−
2
)
|t|=|\frac{\overline X - \overline Y}{S_w\sqrt{\frac{1}{n_1}+\frac{1}{n_2}}}|\ge t_{\alpha/2}(n_1+n_2-2)
∣t∣=∣Swn11+n21X−Y∣≥tα/2(n1+n2−2)
p值为:
p
v
a
l
=
P
{
∣
T
∣
≥
∣
t
0
∣
}
pval=P\{|T| \ge |t_0|\}
pval=P{∣T∣≥∣t0∣}
2.2. 左侧检验
假设形式:
H
0
:
μ
1
−
μ
2
≥
0
H
1
:
μ
1
−
μ
2
<
0
H_0: \mu_1-\mu_2\ge0 \quad H_1:\mu_1-\mu_2\lt0
H0:μ1−μ2≥0H1:μ1−μ2<0
拒绝域为:
t
=
X
‾
−
Y
‾
S
w
1
n
1
+
1
n
2
≤
−
t
α
(
n
1
+
n
2
−
2
)
t=\frac{\overline X - \overline Y}{S_w\sqrt{\frac{1}{n_1}+\frac{1}{n_2}}}\le -t_\alpha(n_1+n_2-2)
t=Swn11+n21X−Y≤−tα(n1+n2−2)
p值为:
p
v
a
l
=
P
{
T
≤
t
0
}
pval=P\{T \le t_0\}
pval=P{T≤t0}
2.3. 右侧检验
假设形式:
H
0
:
μ
1
−
μ
2
≤
0
H
1
:
μ
1
−
μ
2
>
0
H_0: \mu_1-\mu_2\le0 \quad H_1:\mu_1-\mu_2\gt0
H0:μ1−μ2≤0H1:μ1−μ2>0
拒绝域为:
t
=
X
‾
−
Y
‾
S
w
1
n
1
+
1
n
2
≥
t
α
(
n
1
+
n
2
−
2
)
t=\frac{\overline X - \overline Y}{S_w\sqrt{\frac{1}{n_1}+\frac{1}{n_2}}}\ge t_\alpha(n_1+n_2-2)
t=Swn11+n21X−Y≥tα(n1+n2−2)
p值为:
p
v
a
l
=
P
{
T
≥
t
0
}
pval=P\{T \ge t_0\}
pval=P{T≥t0}
3. σ 1 2 ≠ σ 2 2 \sigma_1^2 \neq \sigma_2^2 σ12=σ22且未知
此时以样本方差
S
1
2
,
S
2
2
S_1^2, S_2^2
S12,S22分别代替
σ
1
2
,
σ
2
2
\sigma_1^2, \sigma_2^2
σ12,σ22. 取检验统计量为:
T
=
X
‾
−
Y
‾
S
1
2
n
1
+
S
2
2
n
2
T = \frac{\overline X - \overline Y}{\sqrt{\frac{S_1^2}{n_1}+\frac{S_2^2}{n_2}}}
T=n1S12+n2S22X−Y
3.1. 当样本容量很大时,利用中心极限定理统计量T近似服从标准正态分布
这种情形下,可以利用1.中的算法求解
3.2. 当样本容量较小时,统计量T服从自由度为k的t分布
这种情形下,自由度k可以粗略计算得:
k
=
m
i
n
(
n
1
−
1
,
n
2
−
1
)
k=min(n_1-1, n_2-1)
k=min(n1−1,n2−1)
然后参照2.进行计算求解。
4. Python代码实现
在scipy.stats
包含两个正态总体均值的检验函数, 其函数原型:
stats.ttest_ind(a, b, axis=0, equal_var=True, nan_policy='propagate')
5. 实例验证
例1:随机地抽取年龄都是25岁的16位男子和13位女子, 测得:他们的脉搏率如下:
男: 61, 73, 58, 64, 70, 64, 72, 60, 65, 80, 55,72, 56, 56, 74, 65,
女: 83, 58, 70, 56, 76, 64, 80, 68, 78, 108,76, 70, 97.
为题:假设男女脉搏率都是服从正态分布,这些数据能否认为男女脉搏率的均值相同?
解:
H
0
:
μ
1
−
μ
2
=
0
H
1
:
μ
1
−
μ
2
≠
0
H_0:\mu_1-\mu_2=0 \quad H_1:\mu_1-\mu_2\neq 0
H0:μ1−μ2=0H1:μ1−μ2=0
该问题问双边检验。Python计算如下:
import numpy as np
from scipy import stats
data1 = np.array([61, 73, 58, 64, 70, 64, 72, 60, 65, 80, 55, 72, 56, 56, 74, 65])
data2 = np.array([83, 58, 70, 56, 76, 64, 80, 68, 78, 108, 76, 70, 97])
equal_var = True
if np.var(data1, ddof=1) > np.var(data2,ddof=1)*2 or np.var(data2,ddof=1) >np.var(data1, ddof=1)*2:
equal_var = False
-, pval = stats.ttest_ind(data1, data2, equal_var=equal_var)
# 结果:
pval = 0.03205611305825045
由于pval = 0.03205611305825045 < 0.05
, 拒绝原假设,可以认为男女的脉搏率不相同。
6. 联系交流
-email: hflag@163.com
-qq:532843488