python数据分析 - T检验与F检验:二组数据那个更好?(一)

简介: python数据分析 - T检验与F检验:二组数据那个更好?(一)

1.导语


要在某个指标上对比两个模型的好坏,我们可以直接进行比较,同时为了使比较结果更具说服力,我们可以使用统计检验的方法


使用t检验比较这两组k个样本的均值、使用F检验比较这两组k个样本的方差

即将两个模型分别跑k次,使用t检验比较这两组k个样本的均值、使用F检验比较这两组k个样本的方差,均值越大、方差越小说明在当前指标上该模型更好更稳定


2.假设检验


假设检验的基础是抽样分布,因为利用这些抽样分布的分布特性和统计量,才能推导出估计和假设检验的概率公式


总体均值的估计和假设检验用到均值的抽样分布:


  • 如果正态分布,均值的估计和假设检验用到的抽样分布是标准正态分布(Z统计量)
  • 如果总体方差未知,均值的估计和假设检验用到的抽样分布是t分布(T统计量)
  • 总体方差的估计和假设检验用到卡方分布(卡方统计量)


2.1 原假设与备择假设


原假设和备择假设在不同教材里面有不同的叫法,但是意义都是一样的,它们是假设检验理论的基础,具体介绍请回顾:假设检验原理——原假设和备择假设的建立。

在参数检验中,首先要对某一总体参数建立一个假设,并在随后的抽样推断中以这一假设为前提进行检验。这一假设被称为原假设,用H0表示。

如果检验的结果不能拒绝原假设,就接收这一假设。如果检验的结果拒绝了原假设,就必须接收另一假设——备择假设,用H1表示。


由此可见,原假设与备择假设是一种对立关系。在建立参数假设以后,检验的结果或者是原假设成立,或者是备择假设成立,两者必选其一。


2.1.1 举例


灯泡厂商在给用户提供一批灯泡时声称,
该批灯泡的平均使用寿命1600小时。
为了验证厂商的说法,需要用样本数据进行检验。因此用户首先要作出如下假设

H0=1600


随后用户要选取样本并计算样本的数据。
如果样本数据很接近1600小时,则可接收原假设;
如果样本数据离1600小时很远(远远高于或低于1600小时),就会拒绝原假设,同时就要接收备择假设


H1=1600


一般在假设检验时,我们会将两个假设并列写在检验之前,即:


以上原假设为参数等于某一数值,备择假设为不等于某一数值。类似这种假设的检验,称之为双侧假设检验。有时还经常出现另外一种检验的形式,称之为单侧假设检验


例如,在灯泡厂商为用户提供一批灯泡时声称,该批灯泡的平均寿命最低是1600小时。
在这种情况下,用户需要通过样本数据来检验>1600是否成立。
这时是否大于1600小时是用户研究的问题。
一般原则是将此设为备择假设,记为


H0=1600H1>1600


如果检验的结果表明不能拒绝H0,则不能说明灯泡的平均寿命高于1600小时,即厂商的说法不可信。
如果样本检验的结果表明可以拒绝H0,则用户就会接收备择假设>1600的结论,即可以判断厂商的说法是可信的。
类似上述这种原假设为参数等于某一数值,备择假设为大于某一数值的假设,称为右侧假设检验。
与右侧假设检验相反的是左侧假设检验,它的备择建设设为小于某一数值。
例如,有人对用户说:某种灯泡的平均寿命低于1600小时,用户要对该人的说法进行检验。
此时用户研究的是是否会小于1600小时,因此,他要将<1600设为备择假设,即有


H0=1600H1<1600


如果样本数据能够拒绝H0,则会接受H1:<1600,即该人的说法可信。否则,接受H0,则该人的说法不可信。这个检验就属于左侧假设检验。


2.2 接受域与拒绝域


假设设定以后,需要设定一个判别标准,用以判断样本数据为多少时才可以接受原假设或者拒绝原假设。这个判别标准就是给定一个小概率,根据“小概率事件原理”作出判断(小概率事件会发生),这里小概率用α表示,称为显著性水平(Level Of Significance)。


例如,假设H 0 : = 1600 ; H 1 : ≠ 1600 H0:=1600;H1:≠1600H0:=1600;H1:

=1600,在假设以后给定一个小概率α=0.05,这样就可以在假设成立的分布中,确定两个区域:一个是接近=1600的区域,称之为接受域;另一个是远离=1600的区域,称之为拒绝域。

29dde53ec231461abbc0a8df4a78572e.png


由上图可以看出,接受域的概率区间为1-α,拒绝域的区间概率为α,两侧各占α/2

对假设进行判别时,无论是单侧检验还是双侧检验,都适合以下的判别原则:

  1. 样本数值落在接受域内,则接受原假设,同时拒绝备择假设
  2. 样本数值落在拒绝域内,则拒绝原假设,同时接受备择假设


2.3 两类错误


理想的假设检验是当H0是正确的假设时,能够判别为接受。当H0是不正确的假设时,能够判别为拒绝。但是,在由样本统计量数据判断总体参数时,由于样本数据具有随机性,因此在判别时,就可能有四种结果出现:


  1. H0为真但判别为拒绝,此类错误为“弃真”错误,即将真的当成假的,也称为第一类错误。
  2. H0为真并被接受,这是正确的判别。
  3. H0为假并被拒绝,这是正确的判别。
  4. H0为假并被接受,此类错误称为“取伪”错误,即将假的当成真的,也称为第二类错误。


1687258952380.png

由上表可以看到,当检验结果拒绝原假设时,判断可能是正确的,也有可能是“弃真”错误。虽然不能判断犯“弃真”错误的概率有多大,但是由前述知道,拒绝域的概率为α。因此,在假设检验中,犯“弃真”错误的概率的最大值就是给定的显著性水平α。


当检验结果接受原假设H0时,判别可能是正确的,也有可能犯“取伪”错误。通常用β表示犯“取伪”错误的概率,β的概率是由真正的总体参数的分布所决定的。在假设检验中,由于真实总体参数值不可知,因此,β的概率值也不可知。


所以在检验中,如果结论是拒绝H0,接受H1,那么犯错误的概率很小(α)。但是如果结论是接受H0,拒绝H1,则犯错误的概率(β)是不可知。从这一点来看,所谓接受H0,实质是不能拒绝H0,即在没有足够证据证明情况下只能接受。


虽然β在检验时是未知的,但对于一个固定的总体来说,当给定α以后,β的数值也就随之确定,如下图:


15d16ecc93a7488c887097ccdad65352.png


当真实总体均值为μ1时,却假设总体均值为μ0,(μ1>μ0)。如果样本数据落入α区域,则结论是正确的,即拒绝μ0。如果样本数据落入接受域,就会接受原假设μ0,这就犯了“取伪”错误。


在进行假设检验时,一般按以下四个步骤顺序进行


根据问题建立原假设和备择假设;

选择适当的样本统计量,并确定以H0为真时的抽样分布;

选定显著性水平α,确定临界值;

进行判别,得出结论


假设检验根据样本和使用情景的不同分为


  1. 单样本的假设检验
  2. 两样本的假设检验
  3. 多样本的假设检验


3.单样本的假设检验


3.1 选择零假设和对立假设


一个零假设和一个对立假设组成一对统计假设(原假设和对立假设的概念描述请回顾:假设检验原理——原假设和备择假设的建立),这样成对的统计假设可以分为两类三种:单侧假设检验和双侧假设检验(两类);无方向对立假设、左向对立假设和右向对立假设(三种)

单侧假设检验:只有一个方向上的变化是重要的(某种新型减肥药实际减肥多少)或研究的假设预告了一个具体的变化方向(某种新的治疗肿瘤会减小)时用单侧假设合适。有的需要检验是否变大,有的检验是否变小。


双侧假设检验:对于探索性研究和质量控制,因为任何一个方向的变化都要检查,单检验就不合适了,应该用双侧假设检验,例如控制产品的重量和产品内某种物质的含量。


3.2 选择显著水平α


回忆估计理论,总体均值的区间估计概率公式如下:

其中,1-α称为置信度或置信系数,(1-α)100%称为置信水平。以双尾为例:

45091b56e357469a8b0fd5af7ebf9f6a.png


在假设检验理论中,α是假设检验的显著水平,这是因为它用以评估样本结果的显著性,如果点估计值与零假设中的假设参数有很大差别,以至于P≤α,则拒绝零假设,该结果称为统计显著;如果P>α,则接受零假设,该结果称为不是统计显著的。如上图所示,临界域即为统计显著域,接受域为非统计显著域。


显著水平α在试验前设定为0.05或0.01。例如当α=0.05时,分析人员会在报告中说明“统计假设检验是在0.05显著水平(或5%显著水平)下进行的”,如果P≤0.05,则拒绝零假设,该结果称为统计显著;如果P>0.05,则接受零假设,该结果称为不是统计显著的。


从上图中可以看出,如果P≤0.05,阴影面积比P≤0.01的大,所以P≤0.05可说成是“显著的结果”,P≤0.01可说成是“高度显著的结果”。P≤0.01比P≤0.05发生第一类错误的概率α小。


3.3 决定检验统计量,由此统计量及α来确定检验的决策规则,并用P值或临界值描述


3.4 从总体取一随机样本,并从样本计算检验统计量的值,若可能,计算P值


根据假设检验的总体参数和已知的信息,选择假设检验的统计量。


对于总体均值的假设检验

可用下表选择:


对于总体方差的假设检验


可以用卡方分布。


3.5 举例


如果某电池生产商最近设立了一个改进计算器电池的项目,要求改进的电池比现有的电池使用时间长,已知现在计算器中,电池寿命的量度是正态分布的,均值为100.3min,标准差为


6.25min。现在开发了一种改进电池,在理论上可能持续更长时间,由初步检验可以假定期寿命量度也是正态分布,标准差为6.25min。选取了一个n=20的改进电池的样本,得到均值为


105.6min,在显著水平α=0.05下,作H0: μ=100.3min的单侧检验,并用P值(z值)叙述决策。


因为电池寿命增加是重要的,理论上有理由是增加的 ,设立右侧统计假设:


1687259093349.png


α=0.05时的Z统计量,用P值(或者Z值,表示右尾决策规则)

1687259123100.png

计算P值(临界Z值)

1687259133603.png


因为Z=3.363>1.645,所以拒绝零假设,接受对立假设,同样的,也可以比较P值,因为P=0.0004<=0.05,所以拒绝零假设,接受对立假设。因此可以告知公司在显著水平0.05下可以认为新电池寿命长。

相关文章
|
5天前
|
Python
SciPy 教程 之 Scipy 显著性检验 3
本教程介绍Scipy显著性检验,包括其基本概念、原理及应用。显著性检验用于判断样本与总体假设间的差异是否显著,是统计学中的重要工具。Scipy通过`scipy.stats`模块提供了相关功能,支持双边检验等方法。
12 1
|
11天前
|
机器学习/深度学习 数据采集 数据挖掘
解锁 Python 数据分析新境界:Pandas 与 NumPy 高级技巧深度剖析
Pandas 和 NumPy 是 Python 中不可或缺的数据处理和分析工具。本文通过实际案例深入剖析了 Pandas 的数据清洗、NumPy 的数组运算、结合两者进行数据分析和特征工程,以及 Pandas 的时间序列处理功能。这些高级技巧能够帮助我们更高效、准确地处理和分析数据,为决策提供支持。
28 2
|
11天前
|
图形学 Python
SciPy 空间数据2
凸包(Convex Hull)是计算几何中的概念,指包含给定点集的所有凸集的交集。可以通过 `ConvexHull()` 方法创建凸包。示例代码展示了如何使用 `scipy` 库和 `matplotlib` 绘制给定点集的凸包。
21 1
|
12天前
|
JSON 数据格式 索引
Python中序列化/反序列化JSON格式的数据
【11月更文挑战第4天】本文介绍了 Python 中使用 `json` 模块进行序列化和反序列化的操作。序列化是指将 Python 对象(如字典、列表)转换为 JSON 字符串,主要使用 `json.dumps` 方法。示例包括基本的字典和列表序列化,以及自定义类的序列化。反序列化则是将 JSON 字符串转换回 Python 对象,使用 `json.loads` 方法。文中还提供了具体的代码示例,展示了如何处理不同类型的 Python 对象。
|
6天前
|
Python
SciPy 教程 之 Scipy 显著性检验 1
本教程介绍Scipy显著性检验,包括统计假设、零假设和备择假设等概念,以及如何使用scipy.stats模块进行显著性检验,以判断样本与总体假设间是否存在显著差异。
11 0
|
9天前
|
并行计算 数据挖掘 大数据
Python数据分析实战:利用Pandas处理大数据集
Python数据分析实战:利用Pandas处理大数据集
|
9天前
|
数据采集 数据可视化 数据挖掘
利用Python进行数据分析:Pandas库实战指南
利用Python进行数据分析:Pandas库实战指南
|
11天前
|
索引 Python
SciPy 空间数据1
SciPy 通过 `scipy.spatial` 模块处理空间数据,如判断点是否在边界内、计算最近点等。三角测量是通过测量角度来确定目标距离的方法。多边形的三角测量可将其分解为多个三角形,用于计算面积。Delaunay 三角剖分是一种常用方法,可以对一系列点进行三角剖分。示例代码展示了如何使用 `Delaunay()` 函数创建三角形并绘制。
21 0
|
11天前
|
SQL 数据挖掘 Python
数据分析编程:SQL,Python or SPL?
数据分析编程用什么,SQL、python or SPL?话不多说,直接上代码,对比明显,明眼人一看就明了:本案例涵盖五个数据分析任务:1) 计算用户会话次数;2) 球员连续得分分析;3) 连续三天活跃用户数统计;4) 新用户次日留存率计算;5) 股价涨跌幅分析。每个任务基于相应数据表进行处理和计算。
|
12天前
|
数据采集 数据可视化 数据挖掘
使用Python进行数据分析和可视化
【10月更文挑战第33天】本文将介绍如何使用Python编程语言进行数据分析和可视化。我们将从数据清洗开始,然后进行数据探索性分析,最后使用matplotlib和seaborn库进行数据可视化。通过阅读本文,你将学会如何运用Python进行数据处理和可视化展示。