统计学 - 比例假设检验
总体比例是指一个总体中属于特定类别的比例。
假设检验用于检验关于该总体比例大小的声明。
比例假设检验
假设检验的步骤如下
- 检查条件
- 定义假设
- 确定显著性水平
- 计算检验统计量
- 结论
例如
- 总体:诺贝尔奖获得者
- 类别:出生在美国
我们想要检验这个说法
"超过20%的诺贝尔奖获得者出生在美国"
通过随机抽取40位诺贝尔奖获得者的样本,我们发现
样本中40位诺贝尔奖获得者中有10位出生在美国
那么样本比例为:\(\displaystyle \frac{10}{40} = 0.25\),即25%。
根据这个样本数据,我们使用以下步骤检验该说法。
1. 检查条件
计算比例置信区间的条件是
- 样本是随机抽取的
- 只有两种选择
- 属于该类别
- 不属于该类别
- 样本需要至少
- 5名成员属于该类别
- 5名成员不属于该类别
在我们这个例子中,我们随机抽取了10位在美国出生的人。
其余的人没有在美国出生,所以另外一类有30人。
在这种情况下,条件得到了满足。
注意:即使每个类别没有5人,也可以进行假设检验。但是需要进行特殊调整。
2. 定义假设
我们需要根据我们正在检验的说法定义一个原假设(\(H_{0}\))和一个备择假设(\(H_{1}\))。
该说法是
"超过20%的诺贝尔奖获得者出生在美国"
在这种情况下,参数是美国出生的诺贝尔奖获得者比例(\(p\)).
那么原假设和备择假设为
原假设:20%的诺贝尔奖获得者出生在美国。
备择假设:超过20%的诺贝尔奖获得者出生在美国。
可以使用符号表示为
\(H_{0}\): \(p = 0.20 \)
\(H_{1}\): \(p > 0.20 \)
这是一个“右尾”检验,因为备择假设声称比例超过原假设中的比例。
如果数据支持备择假设,我们拒绝原假设并接受备择假设。
3. 确定显著性水平
显著性水平(\(\alpha\))是在假设检验中拒绝原假设时我们接受的不确定性。
显著性水平是意外得出错误结论的百分比概率。
典型的显著性水平是
- \(\alpha = 0.1\) (10%)
- \(\alpha = 0.05\) (5%)
- \(\alpha = 0.01\) (1%)
较低的显著性水平意味着数据中的证据需要更强才能拒绝原假设。
没有“正确”的显著性水平 - 它只说明结论的不确定性。
注意:5%的显著性水平意味着当我们拒绝原假设时
我们预计在100次中拒绝一个真的原假设5次。
4. 计算检验统计量
检验统计量用于确定假设检验的结果。
检验统计量是从样本计算得出的一个标准化值。
总体比例的检验统计量 (TS) 公式为
\(\displaystyle \frac{\hat{p} - p}{\sqrt{p(1-p)}} \cdot \sqrt{n} \)
\(\hat{p}-p\) 是样本比例(\(\hat{p}\))和所声称的总体比例(\(p\)) 之间的差值。
\(n\) 是样本量。
在我们这个例子中
所声称的(\(H_{0}\))总体比例(\(p\)) 为 \( 0.20 \)
样本比例(\(\hat{p}\)) 为10除以40,即:\(\displaystyle \frac{10}{40} = 0.25\)
样本量(\(n\)) 为 \(40\)
那么检验统计量 (TS) 为
\(\displaystyle \frac{0.25-0.20}{\sqrt{0.2(1-0.2)}} \cdot \sqrt{40} = \frac{0.05}{\sqrt{0.2(0.8)}} \cdot \sqrt{40} = \frac{0.05}{\sqrt{0.16}} \cdot \sqrt{40} \approx \frac{0.05}{0.4} \cdot 6.325 = \underline{0.791}\)
你也可以使用编程语言函数来计算检验统计量
示例
使用 Python 的 scipy 和 math 库来计算比例的检验统计量。
import scipy.stats as stats
import math
# 指定出现次数 (x)、样本量 (n) 和原假设中声称的比例 (p)
x = 10
n = 40
p = 0.2
# 计算样本比例
p_hat = x/n
# 计算并打印检验统计量
print((p_hat-p)/(math.sqrt((p*(1-p))/(n))))
自己试试 »
示例
使用 R 的内置 prop.test()
函数来计算比例的检验统计量。
# 指定样本出现次数 (x)、样本量 (n) 和原假设中的声明 (p)
x <- 10
n <- 40
p <- 0.20
# 计算样本比例
p_hat = x/n
# 计算并打印检验统计量
(p_hat-p)/(sqrt((p*(1-p))/(n)))
自己试试 »
5. 结论
得出假设检验结论主要有两种方法
- 临界值方法将检验统计量与显著性水平的临界值进行比较。
- P值方法将检验统计量的P值与显著性水平进行比较。
注意:两种方法只是在结论的表达方式上有所不同。
临界值方法
对于临界值方法,我们需要找到显著性水平(\(\alpha\))的临界值(CV)。
对于总体比例检验,临界值 (CV) 是来自标准正态分布的Z值。
这个临界Z值 (CV) 定义了检验的拒绝域。
拒绝域是标准正态分布尾部中的一个概率区域。
因为该说法是总体比例超过20%,所以拒绝域在右尾
拒绝域的大小由显著性水平(\(\alpha\))决定。
选择 0.05 或 5% 的显著性水平(\(\alpha\)),我们可以从Z表或使用编程语言函数找到临界Z值
注意:这些函数找到的是左侧区域的Z值。
要找到右尾的Z值,我们需要在尾部左侧的区域(1-0.05 = 0.95)上使用该函数。
示例
使用 Python 的 Scipy Stats 库 norm.ppf()
函数找到右尾中 \(\alpha\) = 0.05 的 Z值。
import scipy.stats as stats
print(stats.norm.ppf(1-0.05))
自己试试 »
使用任一方法,我们都可以发现临界Z值约为 \(\approx \underline{1.6449}\)
对于右尾检验,我们需要检查检验统计量 (TS) 是否大于临界值 (CV)。
如果检验统计量大于临界值,则检验统计量位于拒绝域中。
当检验统计量位于拒绝域中时,我们拒绝原假设(\(H_{0}\))。
这里,检验统计量 (TS) 为 \(\approx \underline{0.791}\),临界值为 \(\approx \underline{1.6449}\)。
以下是该检验的图形说明。
由于检验统计量小于临界值,因此我们不拒绝零假设。
这意味着样本数据不支持备择假设。
我们可以总结一下结论,即
样本数据不支持“超过 20% 的诺贝尔奖获得者出生在美国”的断言,显著性水平为 5%。
P 值方法
对于 P 值方法,我们需要找到检验统计量 (TS) 的P 值。
如果 P 值小于显著性水平 (\(\alpha\)),我们拒绝零假设 (\(H_{0}\))。
检验统计量被发现约为 \( \approx \underline{0.791} \)。
对于总体比例检验,检验统计量是来自标准正态分布的 Z 值。
由于这是一个右尾检验,我们需要找到大于 0.791 的 Z 值的 P 值。
我们可以使用Z 表或编程语言函数来找到 P 值。
注意:这些函数会找到 Z 值左侧的 P 值(面积)。
要找到右尾的 P 值,我们需要从总面积中减去左侧面积:1 - 函数的输出。
示例
使用 Python 的 Scipy Stats 库 norm.cdf()
函数,找到大于 0.791 的 Z 值的 P 值。
import scipy.stats as stats
print(1-stats.norm.cdf(0.791))
自己试试 »
使用任何一种方法,我们都可以发现 P 值约为 \(\approx \underline{0.2145}\)。
这意味着显著性水平 (\(\alpha\)) 需要大于 0.2145 或 21.45%,才能拒绝零假设。
以下是该检验的图形说明。
该 P 值大于任何常见的显著性水平 (10%、5%、1%)。
因此,在所有这些显著性水平下,零假设都被保留。
我们可以总结一下结论,即
样本数据不支持“超过 20% 的诺贝尔奖获得者出生在美国”的断言,显著性水平为 10%、5% 或 1%。
注意:真实总体比例可能仍然大于 20%。
但没有足够的证据表明,这个样本支持这种说法。
使用编程计算假设检验的 P 值
许多编程语言可以计算 P 值,以决定假设检验的结果。
对于较大的数据集,使用软件和编程来计算统计数据更为常见,因为手动计算会很困难。
这里计算的 P 值会告诉我们最低可能的显著性水平,在该水平下可以拒绝零假设。
示例
使用 Python 的 scipy 和 math 库,为比例的右尾假设检验计算 P 值。
这里,样本量为 40,出现次数为 10,检验的是比例大于 0.20 的假设。
import scipy.stats as stats
import math
# 指定出现次数 (x)、样本量 (n) 和原假设中声称的比例 (p)
x = 10
n = 40
p = 0.2
# 计算样本比例
p_hat = x/n
# 计算检验统计量
test_stat = (p_hat-p)/(math.sqrt((p*(1-p))/(n)))
# 输出检验统计量的 P 值(右尾检验)
print(1-stats.norm.cdf(test_stat))
自己试试 »
示例
使用 R 的内置 prop.test()
函数,为比例的右尾假设检验计算 P 值。
这里,样本量为 40,出现次数为 10,检验的是比例大于 0.20 的假设。
# 指定样本出现次数 (x)、样本量 (n) 和原假设中的声明 (p)
x <- 10
n <- 40
p <- 0.20
# 显著性水平为 0.05 的右尾比例检验的 P 值
prop.test(x, n, p, alternative = c("greater"), conf.level = 0.95, correct = FALSE)$p.value
自己试试 »
注意:R 代码中的 conf.level
与显著性水平相反。
这里,显著性水平为 0.05 或 5%,因此 conf.level 为 1-0.05 = 0.95 或 95%。
左尾检验和双尾检验
这是一个右尾检验的示例,其中备择假设声称参数大于零假设断言。
您可以在此处查看其他类型的类似分步指南。