菜单
×
   ❮   
HTML CSS JAVASCRIPT SQL PYTHON JAVA PHP HOW TO W3.CSS C C++ C# BOOTSTRAP REACT MYSQL JQUERY EXCEL XML DJANGO NUMPY PANDAS NODEJS R TYPESCRIPT ANGULAR GIT POSTGRESQL MONGODB ASP AI GO KOTLIN SASS VUE DSA GEN AI SCIPY AWS CYBERSECURITY DATA SCIENCE
     ❯   

统计 - 比例假设检验(左侧尾部)


总体比例是指属于特定类别的总体份额。

假设检验用于检验关于总体比例大小的断言。


比例的假设检验

假设检验使用以下步骤

  1. 检查条件
  2. 定义断言
  3. 确定显著性水平
  4. 计算检验统计量
  5. 结论

例如

  • 总体:诺贝尔奖得主
  • 类别:出生在美国

我们要检验的断言是

"不到 45% 的诺贝尔奖获得者出生在美国"

通过抽取 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}\))是 10 名样本中有 40 名,即:\(\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%,所以拒绝区域在左侧尾部。

Standard Normal Distribution with a left tail area (rejection region) denoted as the greek symbol alpha

拒绝域的大小由显著性水平 (\(\alpha\)) 决定。

选择显著性水平(\(\alpha\)) 为 0.01,即 1%,我们可以从 Z 表 或使用编程语言函数找到临界 Z 值。

示例

使用 Python,可以使用 Scipy Stats 库中的 norm.ppf() 函数来查找左侧尾部 \(\alpha\) = 0.01 的 Z 值。

import scipy.stats as stats
print(stats.norm.ppf(0.01))
自己动手试一试 »

示例

使用 R,可以通过内置的 qnorm() 函数来查找左侧尾部 \(\alpha\) = 0.01 的 Z 值。

qnorm(0.01)
自己动手试一试 »

使用任何一种方法,我们都可以找到临界 Z 值约为 \(\approx \underline{-2.3264}\)

对于左侧尾部检验,我们需要检查检验统计量(TS)是否小于临界值(CV)。

如果检验统计量小于临界值,则检验统计量位于拒绝区域

当检验统计量在拒绝域内时,我们拒绝零假设 (\(H_{0}\))。

在这里,检验统计量(TS)约为 \(\approx \underline{-2.543}\),临界值为 \(\approx \underline{-2.3264}\)

下图显示了此检验的图示

Standard Normal Distribution with a left tail area (rejection region) equal to 0.01, a critical value of -2.3263, and a test statistic of -2.543

由于检验统计量小于临界值,我们拒绝原假设。

这意味着样本数据支持备择假设。

我们可以总结结论如下

1% 的显著性水平下,样本数据支持“不到 45% 的诺贝尔奖获得者出生在美国”的说法。

P 值方法

对于 P 值方法,我们需要找到检验统计量 (TS) 的 P 值

如果 P 值smaller小于显著性水平 (\(\alpha\)),我们拒绝原假设 (\(H_{0}\))。

检验统计量经计算为 \( \approx \underline{-2.543} \)

对于总体比例检验,检验统计量是来自标准正态分布的 Z 值。

因为这是一个左侧尾部检验,我们需要找到 Z 值小于 -2.543 的 P 值。

我们可以使用 Z 表或使用编程语言函数找到 P 值

示例

使用 Python,可以使用 Scipy Stats 库中的 norm.cdf() 函数来查找 Z 值小于 -2.543 的 P 值。

import scipy.stats as stats
print(stats.norm.cdf(-2.543))
自己动手试一试 »

示例

使用 R,可以通过内置的 pnorm() 函数来查找 Z 值小于 -2.543 的 P 值。

pnorm(-2.543)
自己动手试一试 »

使用任何一种方法,我们都可以找到 P 值约为 \(\approx \underline{0.0055}\)

这告诉我们,显著性水平 (\(\alpha\)) 需要大于 0.0055,即 0.55%,才能拒绝原假设。

下图显示了此检验的图示

这个 P 值小于任何常见的显著性水平(10%、5%、1%)。

因此,零假设在所有这些显著性水平下都被拒绝

我们可以总结结论如下

10%、5% 和 1% 的显著性水平下,样本数据支持“不到 45% 的诺贝尔奖获得者出生在美国”的说法。


使用编程计算假设检验的 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%,因此置信水平为 1-0.01 = 0.99,即 99%。


左尾和双尾检验

这是一个**左侧**尾部检验的示例,其中备择假设声称的参数**小于**零假设的声称值。

您可以在此处查看其他类型的等效分步指南


×

联系销售

如果您想将 W3Schools 服务用于教育机构、团队或企业,请发送电子邮件给我们
sales@w3schools.com

报告错误

如果您想报告错误,或想提出建议,请发送电子邮件给我们
help@w3schools.com

W3Schools 经过优化,旨在方便学习和培训。示例可能经过简化,以提高阅读和学习体验。教程、参考资料和示例会不断审查,以避免错误,但我们无法保证所有内容的完全正确性。使用 W3Schools 即表示您已阅读并接受我们的使用条款Cookie 和隐私政策

版权所有 1999-2024 Refsnes Data。保留所有权利。W3Schools 由 W3.CSS 提供支持