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