数据分析中的置信区间(CI):概念、计算及应用
数据分析中的置信区间(CI):概念、计算及应用
置信区间(CI)是数据分析中一个重要的统计概念,用于估计真实总体值可能所在的范围。本文将详细介绍置信区间的定义、计算方法及其在数据科学中的应用,帮助读者更好地理解和应用这一统计工具。
置信区间(CI)是什么?
置信区间(CI)是一个值范围,用于估计真实总体值可能下降的位置。与其说学生的平均身高是 165 厘米,不如说我们 95% 的信心,真正的平均身高在 160 厘米到 170 厘米之间。
在深入研究置信区间之前,您应该熟悉以下内容:
- t 检验
- z 检验
解释置信区间
假设我们抽取 50 名学生的样本,计算出他们平均身高的 95% 置信区间,结果是 160-170 厘米。这意味着,如果我们重复采用类似的样本,则这些区间的 95% 将包含总体中所有学生的真实平均身高。
置信区间
Confidence level 告诉我们 true 值在计算范围内的确定程度。如果我们必须多次重复采样过程,我们预计这些区间的一定百分比将包括 true 值。
- 90% 置信度:90% 的区间将包括真实的总体值。
- 95% 置信度:95% 的区间将包括数据科学中常用的真实值。
- 99% 置信度:99% 的区间将包含真实值,但区间会更宽。
为什么置信区间在数据科学中很重要?
- 它们有助于衡量预测和估计中的不确定性。
- 通过这些数据,科学家们找到了可靠的结果,而不仅仅是给出一个数字。
- 它们广泛用于 A/B 测试、机器学习和调查分析,我们稍后会研究这些分析以检查结果是否有意义。
构造置信区间的步骤
要计算置信区间,请遵循以下简单的 4 个步骤:
步骤 1:确定样本问题。
定义要估计的总体参数,例如,学生的平均身高。选择正确的统计数据,例如样本均值。
第 2 步:选择置信度。
在此步骤中,我们选择置信度,一些常见的选择是 90%、95% 或 99%。它代表了我们对估计的确定程度。
第 3 步:找到误差幅度。
要找到 Margin of Error,请使用以下公式:
M一个rg我n of Error=Cr我t我c一个l V一个lue×St一个nd一个rd ErrorMargin of Error=Critical Value×Standard Error
对于小样品,使用 Z 表或 T 表找到临界值。首先,您选择显著性水平(α),对于 95% 的置信水平,该水平通常为 0.05。然后决定您是执行单尾还是双尾测试,其中双尾是更常见的选择。在此之后,您可以根据显著性水平和测试类型在 Z 表或 T 表中查看相应的值。
标准误差衡量样本的变异性,通过将样本的标准差除以样本量的平方根来计算。将临界值和标准误差组合在一起,可以得到误差幅度,它告诉您预期真实值所在的范围。
步骤 4:指定置信区间。
要找到 Confidence Interval,我们使用以下公式:
Conf我dence 我nterv一个l=Po我nt Est我m一个te±M一个rg我n of ErrorConfidence Interval=Point Estimate±Margin of Error
现在,Point Estimate 通常是样本的平均值或平均值。这是基于样本数据对真实值的最佳猜测。Margin of Error(边距误差)告诉您样本数据可能与我们在上一步中计算的真实值相差多少。
因此,当您从点估计值中增加或减去误差幅度时,您会得到一个范围。此范围告诉您真实值可能落在何处。
置信区间的类型
一些常见的 Confidence Interval 类型包括:
置信区间的类型
1. 正态分布数据平均值的置信区间
当我们想根据样本找到总体的平均值时,我们使用这种方法。
- 如果样本量较小(小于 30),则使用 T 分布,因为小样本往往具有更大的可变性。
- 如果样本量很大(超过 30),则我们使用 Z 分布,因为大样本往往给出更准确的估计值。
2. 比例的置信区间
在估计人口比例(如喜欢产品的人数百分比)时,使用此类型。在这里,我们使用样本比例、标准误差和临界 Z 值来计算区间。它为我们提供了基于样本数据的实际值可能落在何处的想法。
3. 非正态分布数据的置信区间
有时,您拥有的数据不是正态分布的,这意味着它不遵循钟形曲线。在这种情况下,传统的置信区间并不是最好的方法。相反,我们可以使用 bootstrap 方法。这涉及对数据进行多次重新采样以创建不同的样本,然后从这些重新采样中计算置信区间。
计算置信区间
在了解了 t 检验和 z 检验之后,我们现在开始讨论如何计算置信区间。 要计算置信区间,您需要两个关键统计数据:
- 平均值(μ) — 算术平均值是数字的平均值。它被定义为 n 个数字之和除以数字计数直到 n。
μ=1+2+3+…+nn
- 标准差(σ) — 它是衡量数字分布程度的指标。它被定义为每个数字与平均值之差的平方和。
σ=∑(xi−μ)2n
获得这些后,您可以使用 t 分布或 z 分布计算置信区间,具体取决于样本量,无论总体标准差是否已知。
A) 使用 t 分布
当您的样本量较小(通常为 n < 30)并且您不知道总体标准差时,我们使用 t 分布。这在 A/B 测试等领域或处理小型数据集时很常见。
请考虑以下示例。随机抽取 10 名 UFC 战士的样本并测量他们的体重。发现平均体重为 240 公斤。构建平均重量的 95% 置信区间估计值。样品标准差为 25 kg。求所有 UFC 战士的真实平均体重的样本的置信区间。
分步过程:
- 自由度(df):
对于 t 分布,我们首先计算自由度: df=n−1=10−1=9DF 系列=n−1=10 -1=9
- 显著性水平(α):
置信水平(CL)为 95%,因此显著性水平为: α=1– CL2=1–0.952=0.025α=21–CL =21–0.95 =0.025
- 从 t 分布表中查找 t 值:
从 df = 9 和 α = 0.025 的 t 表中,t 值为 2.262,可以使用下表找到。
(df)/(α) 0.1 0.05 0.025 ..
∞ 1.282 1.645 1.960 ..
1 3.078 6.314 12.706 ..
2 1.886 2.920 4.303 ..
: : : : ..
8 1.397 1.860 2.306 ..
9 1.383 1.833 2.262 ..
- 在公式中应用 t 值:
置信区间的公式为: μ±t(σn)μ±t(n σ )使用以下值:240±2.262×(2510)240±2.262×(10 25 )
- 置信区间变为: (222.117,257.883)(222.117,257.883)
因此,我们有 95% 的信心认为 UFC 战士的真实平均体重在 222.117 公斤到 257.883 公斤之间。
这可以使用 Python 的库进行计算 ,以查找 t 值并执行必要的计算。stats 模块提供各种统计函数、概率分布和统计检验。
scipy.stats
import scipy.stats as stats
import math
sample_mean = 240
sample_std_dev = 25
sample_size = 10
confidence_level = 0.95
df = sample_size - 1
alpha = (1 - confidence_level) / 2
t_value = stats.t.ppf(1 - alpha, df)
margin_of_error = t_value * (sample_std_dev / math.sqrt(sample_size))
lower_limit = sample_mean - margin_of_error
upper_limit = sample_mean + margin_of_error
print(f"Confidence Interval: ({lower_limit}, {upper_limit})")
输出:
Confidence Interval: (222.1160773511857, 257.8839226488143)
B) 使用 Z 分布
当样本量较大(n > 30)或总体标准差已知时,将使用 z 分布。这在大规模调查、市场研究中很常见。
请考虑以下示例。随机抽取 50 名成年女性的样本并测量她们的红细胞计数。样本均值为 4.63,RBC 计数的标准差为 0.54。为成年女性的真实平均 RBC 计数构建 95% 置信区间估计。
分步过程:
- 找到问题中给出的平均值和标准差。
- 查找置信水平的 z 值:
对于 95% 置信区间,z 值为 1.960。
- 在公式中应用 z 值: μ±z(σn)
使用值:下表中的一些常见值:
置信区间 z 值
90% 1.645
95% 1.960
99% 2.576
置信区间变为:(4.480,4.780)
因此,我们有 95% 的信心认为成年女性的真实平均 RBC 计数在 4.480 和 4.780 之间。
现在让我们使用 Python(统计库)实现它
from scipy import stats
import numpy as np
sample_mean = 4.63
std_dev = 0.54
sample_size = 50
confidence_level = 0.95
standard_error = std_dev / np.sqrt(sample_size)
z_value = 1.960
margin_of_error = z_value * (std_dev / math.sqrt(sample_size))
lower_limit = sample_mean - margin_of_error
upper_limit = sample_mean + margin_of_error
print(f"Confidence Interval: ({lower_limit:.3f}, {upper_limit:.3f})")
输出:
Confidence Interval: (4.480, 4.780)
Confidence Interval 的一些关键要点是:
- 置信区间在数据科学中至关重要,可以发现估计的不确定性并使预测更可靠。
- t 分布用于小样本量(n < 30),而 z 分布用于大样本量(n > 30)。
- 置信区间通过提供范围而不是单个点估计来帮助做出数据驱动的决策。这在 A/B 测试、市场研究和机器学习中尤为重要。
常见问题(FAQ)
1. 什么是 95% 置信区间规则?
95% 置信区间规则指出,如果我们为总体参数重复构造 95% 置信区间,我们可以预期其中 95% 的区间包含真实参数值。
2. 如果 95 个置信区间包括 1 怎么办?
如果 95% 置信区间包括 1,则意味着我们在统计上没有信心说真实参数值与 1 不同。换句话说,数据不够强,无法排除 true 参数值为 1 的可能性。
3. 置信水平和置信区间有什么区别?
置信水平是置信区间包含 true 参数值的概率。置信区间是可能包含 true 参数值的值范围。
4. 如何找到样本量?
样本数量是样本中的观测值个数。样本量由所需的置信水平、所需的误差幅度和数据变异性决定。
5. 什么是 5 显著性水平?
显著性水平是在原假设实际为真时拒绝原假设的概率。显著性水平通常设置为 0.05,这意味着我们愿意接受 5% 的几率出现 I 类错误。