密西根大学-Python-统计学笔记-全-
密西根大学 Python 统计学笔记(全)
一:欢迎来到《使用Python的统计学》 🎉

在本节课中,我们将要学习这门课程的总体介绍、结构安排以及你将掌握的核心技能。课程旨在通过Python实践,帮助你理解并应用统计学知识。
概述
欢迎来到《使用Python实现数据可视化与理解统计学》。这是“使用Python的统计学”系列专项课程的第一门课。每门课程都将建立在之前课程的基础上,为你提供一个全面的统计学视角,并让你能够使用Python练习所学内容。
课程结构
本课程包含四个部分。以下是各部分内容的简要介绍。
第一部分:统计学与数据基础
在第一部分,我们将探讨什么是统计学以及什么是数据。我们会将统计学视为一个包含多种不同视角的广泛学科。我们将聆听几位同事分享他们在现实生活中应用统计学的观点。我们会发现数据无处不在,并且当今数据中包含许多有趣的内容。你将有机会分享你在生活中使用数据的经历。在编程方面,我们将介绍Jupyter Notebooks和一些Python基础知识。
第二与第三部分:数据处理与可视化
在第二和第三部分,我们将开始探索能用数据做些什么,包括通过图形和数值方式对数据进行汇总。我们将从单变量汇总方法过渡到多变量汇总方法。因此,你将使用许多不同的数据集进行练习,其中一个数据集包含我们团队成员和同事收集的侧手翻数据。是的,我们在工作时做了侧手翻。你还将进行一些写作和交流,与我们分享一项关于披萨的研究结果。
第四部分:概率与统计推断
在第四部分,我们将开始研究概率、抽样以及如何利用样本数据对更大的总体进行推断的方法。
学习支持
在整个课程中,我们将为你提供评估学习成果的机会。我们会提供一些资源,让你能够更深入地探索某些主题。同时,你将通过一些网络小程序和Python教程获得动手实践的经验。
教学团队
你将听到我们团队多位成员的讲解。我们非常期待你开始你的统计学学习之旅。事实上,我们如此兴奋,甚至可能想用一个侧手翻来为你送行。
总结
本节课中,我们一起学习了《使用Python的统计学》课程的整体框架和目标。我们了解到,本课程将从数据基础讲起,逐步深入到数据汇总、可视化,最终学习统计推断,并全程辅以Python编程实践。准备好开始这段结合了理论与动手实践的学习旅程吧。
1:数据理解与可视化指南 📊

在本节课中,我们将学习如何高效利用《使用Python的统计学》课程资源,特别是Jupyter Notebook,以最大化学习效果。课程重点在于理解数据、数据可视化以及如何通过Python应用统计概念。
概述
本课程将大量使用Jupyter Notebook来演示和讲解Python中的数据理解与可视化概念。为了帮助您更好地掌握内容,本节提供了一系列实用指南和建议。
课程结构与资源使用
上一节我们介绍了课程的整体目标,本节中我们来看看课程的具体结构和资源使用方法。
您会注意到,课程内容通常按周组织。每周包含视频讲座、阅读材料、讨论提示、测验,最后是Jupyter Notebook。
代码示例:课程周结构
# 示例:每周课程结构
week_structure = {
"videos": "系列讲座视频",
"readings": "补充阅读材料",
"discussion": "讨论主题",
"quizzes": "知识测验",
"notebooks": "Jupyter Notebook实践"
}
公式:学习效率最大化
学习效果 = 理论理解 + 实践操作
高效学习策略:同步使用Notebook
我们强烈建议您不要等到课程最后才打开Notebook。相反,请在观看讲座视频时同步打开对应的Notebook。
以下是具体操作建议:
- 准备多显示器环境:使用大显示器或双显示器,一边播放视频,一边操作Notebook。
- 跟随操作:在视频讲解概念时,暂停播放,在Notebook中尝试相同的步骤。
- 即时实践:通过动手操作加深对Python代码和统计概念的理解。
过往学员反馈表明,这种方法能显著提升信息吸收率和实际应用能力。
数据理解的核心重点
本课程的一个核心重点是理解数据本身。这包括数据的定义、类型以及来源。
当您准备进行数据分析时,了解数据来源至关重要。在课程第四周,您将深入学习数据来源,包括如何选择样本以及如何在数据分析中考虑抽样设计。
为了帮助您掌握这些重要概念,课程视频中嵌入了多种问题。请充分利用这些互动问题,使抽象概念具体化。
提问与资源利用
课程讲师欢迎您就课程内容提出个人问题。虽然问题可能无法立即得到解答,但已回答的问题会被归档到FAQ中,供未来学员参考。
许多问题可以在讨论论坛中得到快速解答。但您也可以随时提出更复杂的问题,这些问题将被转交给讲师团队。
此外,课程团队也在向学员学习。针对过去学员反馈较难掌握的主题,我们准备了补充阅读材料列表。
请务必查看“课程资源”下的“补充阅读”部分,这些材料旨在帮助澄清难点概念。
总结

本节课中我们一起学习了如何高效利用《使用Python的统计学》课程资源。关键要点包括:同步使用Jupyter Notebook与视频讲座以最大化学习效果;重视对数据来源和类型的理解;积极利用课程中的互动问题、讨论论坛和补充阅读材料来解决疑问。
希望这些指南和技巧能帮助您更好地学习后续的精彩内容。😊
2:统计学本质解析 📊

在本节课中,我们将探讨统计学的定义、核心概念、历史背景及其相关领域。我们将学习如何从数据中学习,理解统计学的不同视角,并了解它如何帮助我们做出基于数据的决策。
什么是统计学?
统计学是一门涵盖从数据中学习所有方面的学科。作为一种方法论,它涉及使我们能够处理和理解数据的工具与方法。统计学家开发数据分析方法,并不断研究这些方法的特性,以了解它们在何时能提供洞见,何时可能产生误导。
统计量与统计学之间存在区别。我们每天遇到的“统计量”是指数据集合的数值或图形摘要。例如,我向学生报告的期末考试平均分、某地一段时间内的最低温度,或调查中退休人员的比例。这些都是统计量。
而“统计学”这一学科领域,则专注于研究方法论。统计学家开发新的统计工具,从数据中计算统计量,并与领域专家合作,以恰当的方式解释这些结果。
统计学的挑战与机遇
统计学是一个不断发展和充满活力的领域,随之而来的是挑战与机遇。各种统计方法的特性被持续研究,以确定何时以恰当的方式使用它们。大量新的应用领域涌现,这些新领域催生了开发新分析方法的需求。新的测量方式和传感器带来了需要分析的新型数据。此外,计算技术的进步使我们不仅能够进行数据分析,还能对收集到的大量数据进行更复杂的分析。
统计学的不同视角
统计学是一个包容性很强的学科,它融合了来自理论、实践及相关领域的新思想。以下是关于统计学领域以及数据工作者如何看待这个领域的一些不同视角。
数据摘要的艺术
数据可能令人不知所措,因此需要理解数据,这通常涉及数据的简化和摘要。数据简化的主要目标之一是使数据集对人类观察者来说易于理解。统计学家拥有多种不同的数据摘要技术,这些技术需要与数据使用者的目标保持一致才能有意义。因此,统计学家接受过良好训练,能够使用恰当、严谨且有效的方法来摘要数据。
评估数据主张的框架
发展统计学领域的一个主要动机是提供一个结构和框架,用以评估基于数据的主张是否有意义。通常,从数据中获得的洞见并非100%准确。但幸运的是,我们有一种方法来量化报告结果与真实情况之间的潜在差距。许多民意调查在报告结果时会附带一个误差范围。这个误差范围提供了报告结果与实际民意状态之间可能存在的差异的概念。
基于不确定性的决策
理解数据非常重要,但这自然引出了能够根据所学知识采取行动的需求。在某些统计学分支中,决策是任何统计分析的最终目标。在我们的个人和职业生活中,我们都在面对不确定性时做出决策。我们必须权衡不同方法的成本和收益。例如,一个人发现自己患某种癌症的风险高于平均水平,是否应该接受预防性手术?统计学可以帮助为这一决策过程提供信息。
理解变异性
当我们摘要数据时,通常首先关注典型值或中心值。但在统计学中,我们非常重视理解数据中的变异性。如果我们知道美国人平均拥有约6000美元的信用卡债务,我们就对这个信用卡债务分布的中心值有了很好的了解。但如果我们得知大约10%的人拥有超过30000美元的信用卡债务,那么这个百分位数就为我们提供了关于人群中信用卡债务变异性的更多信息。
预测与预报
统计学的核心任务之一是预测。我们无法绝对确定地知道未来,但如果我们能有效利用现有数据,有时可以对未来做出相当准确的预测。例如,天气预报、地震风险预测、新产品未来市场需求估计、选举结果预测,或患者是否会对某种治疗产生良好反应。
测量与评估
我们收集大量数据,其中一些变量可以相当准确地测量,例如一个人的年龄或身高。而另一些变量则较难测量,例如血压实际上每分钟都在变化。此外,还有一些构念,如情绪、个性、政治意识形态,这些更难定义和量化。统计学在构建和评估测量这些难以定义概念的严谨方法,以及评估各种方法的质量方面发挥着重要作用。
有原则的数据收集基础
有时数据收集可能非常昂贵和困难。例如,如果必须破坏产品才能对其进行测量,我们当然希望有能力收集尽可能少的数据。资源限制限制了可以收集的数据量。但如果数据太少,可能导致研究结果不佳。因此,统计学提供了一种合理的权衡方法,既希望获得更多数据,又了解和允许这些资源限制。
📜 统计学简史
以下是一些关键的历史里程碑:
- 古代:文明开始收集关于收成、洪水和人口规模的数据。
- 18世纪:概率论发展,使得随机性和变异性能够用数学更精确地定义。
- 19世纪:现代统计学出现,主要源于解决遗传学和计量经济学领域的问题。
- 20世纪:统计理论在科学和工业的许多新应用领域推动下取得进展,计算机开始用于数据分析。
- 当代:我们进入大数据、海量数据、数据科学和机器学习的时代。

🤝 统计学的相关领域
统计学与多个相关领域有交集:
- 计算机科学:提供处理数据的算法、结构以及操作数据的编程语言。
- 数学:提供表达统计概念的简洁语言和符号,以及评估和理解统计方法特性的工具。
- 概率论:数学的一个分支,是统计学基础的关键部分,使我们能够表达随机性和不确定性的概念。
- 数据科学:提供数据库管理、机器学习以及执行数据分析所需的基础设施。
🚀 统计学的现代应用
统计学已从一个虽小但重要的领域,发展成为研究和工业中的关键支柱。一些新兴应用包括:
- 计算机视觉
- 自动驾驶
- 人脸识别
- 在线搜索和购物中的推荐系统
- 医疗健康领域的预测分析和精准医疗
- 欺诈检测
- 环境和基础设施风险评估
- 社会与政府服务,如职业培训和行为治疗
总结
在本节课中,我们一起学习了统计学的本质。我们了解到统计学是从数据中学习的学科,它既是工具也是方法论。我们探讨了统计学的不同视角,包括数据摘要、决策框架、变异性理解、预测、测量评估和有原则的数据收集。我们还回顾了统计学的简史,认识了其与计算机科学、数学、概率论和数据科学等相关领域的紧密联系。最后,我们看到了统计学在现代众多前沿领域的广泛应用。统计学和统计思维帮助我们理解围绕我们的数据和信息。祝愿你在接下来的统计学旅程中一切顺利!
4:现实中的统计学应用访谈 🎙️

在本节课中,我们将通过密歇根大学两位教授的访谈,了解统计学与Python在现实世界中的具体应用。我们将探讨他们的研究项目、教学经验以及对学习者的建议。

访谈嘉宾介绍

大家好,我是Brenda Gunderson。今天我们邀请了两位特别的嘉宾,Brady West和Ambuj Tewari。他们将分享他们与统计学的联系以及对Python统计学的热情。

欢迎你们。谢谢。
我们从Brady开始。你的正式头衔是密歇根大学社会研究所调查研究中心的研究副教授。请分享一下你的实际工作内容。
这个头衔确实很长。关键部分是“研究”,我的主要职责是撰写研究提案,向政府或私营公司等不同资助机构申请资金,以获得进行基础研究的经费。我从事调查方法论和调查统计学的研究。主要工作是撰写这些提案,如果幸运获得资助,这些资金将支持我开发原创方法、撰写论文,并资助一些学生。我的职位有些独特,大多数校园内的研究型教授主要职责是研究,但我在ISR(社会研究所)还有一个教学项目。我们提供调查方法学的硕士和博士学位。因此,除了撰写提案和进行基础研究,我每个学期通常还教授一门课程,全年都有教学任务,包括ISR的暑期项目。所以教学也是这个职位的重要组成部分。我的工作涉及平衡教学、指导学生、开发课程新材料以及与其他研究人员合作。这是一个简短的总结,但非常令人兴奋。我从事许多不同的工作,喜欢与学生合作,热爱调查统计学,所以每次工作都很有趣。
Brady的研究项目



请分享一个你最近或觉得特别有趣的研究项目。
在我的博士论文中,我与世界著名的统计学家Roderick Little博士合作。我希望申请另一个资助项目,以便与Rod继续扩展我论文中的一些工作。我们很幸运地从NIH获得了一些资金,用于扩展我与Rod在论文中做过的工作。我们在这个特定领域发表了一篇论文,研究的是评估非概率样本中的潜在偏差。在这个专项课程中,我讨论了概率抽样和非概率抽样的区别。Rod、我的同事Phil Boonstra以及我的学生Jingwei和Chen Chen正在合作开发原创的度量方法,用于量化给定非概率样本中可能存在的偏差量。例如,如果你试图从Facebook收集数据,或通过Facebook招募人员,或分析Twitter等数据,我们能否使用良好的理论度量来量化从这些非标准数据集中产生的估计值的潜在偏差?这些数据集并非来自设计良好的概率样本,而概率样本的估计计算相对直接。我对此感到非常兴奋。我们实际上正在与密歇根大学生物统计学系的另一个大型项目合作,名为“Genes for Good”项目。他们通过Facebook招募参与者。我们联系了该项目的主要负责人,看看是否可以应用我们提出的方法来评估其项目中的潜在偏差。他们测量了许多重要的癌症风险因素,收集了大量遗传数据。我们正在使用这些遗传数据,学习关于遗传数据和多基因评分等知识,试图量化基因组上的内容。这非常有趣。我们使用这些数据来查看“Genes for Good”项目产生的测量结果是否与另一个基准概率样本“Health and Retirement Study (HRS)”更为一致。HRS收集相同的遗传数据。我们希望比较HRS的遗传特征与“Genes for Good”的遗传特征,从而有机会应用我们与Rod正在开发的度量方法。这是一个非常幸运的位置,另一个与学生合作、做出新颖贡献的机会,所以非常令人兴奋。这只是我最近从事的项目之一。
你总是在学习新东西,对吗?是的,这种职位以及统计学本身的特点就是永远不会有无聊的时刻。你总是在学习新的东西,学习应用统计方法的新方式,或者现实世界中可以从良好统计分析中受益的事物。就像我说的,我每天工作都很快乐。这很酷。
Ambuj的背景与工作
好的,Ambuj,现在轮到你了。你的正式头衔是密歇根大学统计学副教授、电气工程与计算机科学副教授。请分享一下你的实际工作内容。

我经常被问到这个问题:你怎么同时是统计学和计算机科学的教授?实际上,这两个学科因为数据科学运动正变得越来越接近。我的研究领域是机器学习,历史上源于人工智能的努力。其理念是,如果你想创造智能机器,可能需要让它们自主学习,不能仅仅编程一切。因此,计算机科学家开始研究如何创建能从经验中学习的程序,而无需编程所有内容。现在机器学习无处不在,它存在于我们的手机、Google、Facebook中。随着机器学习领域的发展,它越来越接近统计学。这就是为什么我现在的主要职位在统计学系,但我参与了许多跨学科活动,比如本科数据科学专业(密歇根大学现已提供),以及2018年秋季推出的数据科学硕士项目。数据科学的核心是融合计算思维和推断思维,以解决科学、商业或任何应用领域的问题。这就是为什么我在两个系都有职位。
Ambuj的研究项目
请分享一个你最近从事或觉得非常有趣的项目。
当我加入密歇根大学时,令人兴奋的事情之一是我有机会与Susan Murphy合作,她刚刚进入移动健康领域,现在我也对此产生了浓厚兴趣。一件令人兴奋的事情是我们提交了一款用于成瘾研究数据收集的手机应用,并参加了由国家药物滥用研究所(NIDA)赞助的全国竞赛。目前正在进行的一项研究是“Intern Health Study”,由精神病学系的Srijan Sen教授领导。这项研究帮助我们了解医学生实习期间的情绪或抑郁症状如何发展。因为医学生实习压力非常大,工作时间长,没有固定日程,他们经历了许多情绪起伏。相当一部分医学生实习期间会出现抑郁。我们给他们提供了智能手机,收集情绪数据、活动数据、睡眠数据。这些数据将用于进一步了解我们如何预测抑郁发作,从而进行干预。我对在移动健康领域的工作感到非常兴奋。



关于NHANES数据

说到数据,我们在这门课程中将大量使用的一个数据集来自NHANES。Brady,你能分享一下NHANES的历史或一些有趣的事实吗?
当然。NHANES代表国家健康与营养检查调查,这是政府(疾病控制与预防中心)进行的一项重要的全国性健康研究,旨在了解美国人口的健康状况、新兴健康需求、不同亚组之间的健康差异等。本专项课程中的许多数据集将是NHANES数据的变体,这些数据几乎每两年持续收集一次。NHANES的一个很酷的特点是它是全国性调查,需要从家庭中抽取全国个体样本。NHANES是所谓“整群抽样”的一个很好的例子。它不是简单地从全国随机选择个体,而是先从全国随机选择地理区域,然后从这些区域随机抽样个体,邀请他们参与主要调查。NHANES的主要调查涉及物理测量,例如血压、血液特征、体重等,而有些个体仅被询问关于其医疗史的问题。为了对这些来自全国各地的随机抽样个体进行物理测量,CDC驾驶着满载医疗设备和训练有素专业人员的巨型半挂车,前往这些随机抽样的地理区域。然后,从这些区域随机抽样的人员被邀请前来参与数据收集,进行这些测量等。因此,这是一个很好的整群抽样例子,因为CDC不能简单地将这些巨型半挂车开到个别家庭的车道上说“我们来为你测量”。他们需要能够将车开到一个区域,然后与该区域良好的随机样本合作。所以,NHANES是美国人口健康极其重要的数据来源,同时也是整群抽样重要性的一个很好的教学示例。由于他们用于收集健康数据的设备,这是该调查的一个独特特征,但它是一项非常重要的调查,数据对健康政策等具有重要的现实意义。因此,它既是很好的教学示例,也是研究人员的非常重要的数据资源。研究人员可以下载NHANES数据,生成各种关系或变量分布的国家估计。所以,它是研究人员极其重要的数据来源,这也是我们在本课程中使用它的一个重要原因。本专项课程的参与者将能够使用NHANES数据,并对人口做出一些有趣的推断。所以,它是很好的教学工具,也是整个美国非常重要的资源。我们拥有这些数据,它已经持续了很长时间,并且继续是了解美国人口健康状况的优秀信息来源。
关于Python的激情
好的,这是一门关于使用Python进行统计学的课程。我已经看到你的眼睛闪闪发光了。Ambuj,你是一个热情的Python用户,对吗?
绝对是的。事实上,我教授一门博士级别的课程,这是我们博士课程计算序列的一部分,也非常受硕士生欢迎。我以前经常使用MATLAB,整个机器学习领域也曾经大量使用MATLAB。但Python最初是作为通用语言开发的,随着社区的努力,它逐渐获得了优秀的数据科学生态系统以及数值和科学计算工具,比如NumPy、SciPy和pandas等库。现在,Python拥有出色的库生态系统,可以开箱即用,并且有一个惊人的在线社区。你可以提问,可以回答问题,这是另一种学习方式。我喜欢Python的原因之一是它是一种优秀的教学语言,因为它可以很快上手。这种语言可以随着你的成长而成长,所以入门所需努力很小,但你能达到的高度没有限制。无论你想进行手机开发、网络开发还是数据科学,Python都能适用于许多不同的问题领域。所以我热爱它。
听起来不错。我能看到你在谈论这个时眼中的光芒。
给研究者的建议
我的下一个问题是给你们两位的。你们多年来进行了许多咨询和研究工作。你们希望每个人在考虑进行自己的研究时知道或记住什么?
我想我先开始。我非常幸运在密歇根大学的一个咨询小组工作多年,正是在那里我学到了对应用统计学的热爱,通过与CcarR(咨询小组)的不同客户合作。根据近20年与大学研究生、教职员工的咨询经验,我想说的一点是,当你考虑设计一个研究项目时,永远不要害怕在项目一开始就寻求帮助。很多教职员工和研究人员认为他们知道一切,可以独自完成所有工作而不需要任何协助。但特别是如果你想进行高质量的研究,你真的需要与统计学家交谈(如果你想进行调查,则需要与调查方法学家交谈),这些人在你设想的研究的各个不同维度都有专业知识。所以,你需要与统计学家交谈:我需要多大的样本量?我最终想使用哪些分析技术来回答我的研究问题?为了从给定人群收集数据,我需要设计哪些工具?试图仅凭过去学过的一学期课程来完成所有这些,可能不会有好结果。所以,大学提供像Ccar这样的地方非常好,研究人员可以在起点进行对话,说“这是我真的想做的,这些是我想回答的研究问题,我如何最好地设计这个研究项目?”然后顾问可以说“这是你想使用的工具,这是你设计问题的方式,这是你为你最终要收集的数据集做准备的方式,这是你可能用来回答研究问题的分析计划。”但当人们已经完成了75%的设计,并且设计中存在一大堆本可以通过最初对话避免的缺陷时,总是让我有点不寒而栗。所以,我对研究人员的建议是,特别是如果你要进行大量统计分析,一定要在一开始就与某人交谈,确保在设计过程中得到合理的建议,因为这将节省大量时间,并提前解决许多问题。如果你等待太久,可能会对实际进行研究产生严重影响。所以,与那些在你可能不擅长的其他领域有专业知识的人进行前期对话非常重要。
非常好的建议。Ambuj,有什么要补充的吗?
是的,我完全同意Brady所说的一切。我想提出另一个我认为非常及时的问题,即伦理和责任,特别是在数据驱动决策和算法决策方面。现在有些决策是关于将谁送进监狱、招聘谁或解雇谁,必须有一定的问责制。你可以说“是的,是算法在做决定”,但必须有机制,以便如果出现问题,可以进行调查。所以我的观点是,研究人员在进行研究时,也必须投入一定精力考虑其伦理及其对社会的影响。资助机构知道这一点。你可能知道,NSF(国家科学基金会)在接受资助提案时,不仅根据智力价值进行评判,还根据更广泛的影响进行评判。所以我认为,在当今世界,科学家和研究人员思考他们工作的更广泛影响,而不仅仅是他们正在做的技术研究,是非常重要的。我们可能很快就会有自动驾驶汽车,那么如果发生事故,谁负责?所以我认为,关于责任、信任、隐私、公平等问题的关注现在都非常重要。
非常好的观点,是的。
Brady的教学经验
好的,让我们回到教学。Brady,你提到你也从事一些教学。我也是,教学是我的热情之一。请进一步解释一下你教授的一些内容,以及教学角色中最好的部分是什么?
回想一下过去一年我所做的,我在秋季开始教授一门我从头设计的课程,关于统计建模的应用。这是为研究生和博士生开设的,介绍他们可能在基础统计方法或回归课程中学不到的各种建模方法,比如多级建模、结构方程建模、构建分类和回归树、纵向数据分析等。我想让他们接触这些不同种类的统计建模应用。在这门课程中,他们必须在这四个主要领域各提出一个研究问题,找到一个他们想用来尝试回答该问题的数据集,然后拟合一些模型,指定他们拟合的模型,解释模型拟合过程的结果,并最终在一个学期内撰写四篇论文来描述分析结果。我们的一些学生试图将这些论文转化为实际出版物。我与他们合作完成这些。他们必须提供一个附录,展示他们在每篇论文中使用的所有代码。所以他们正在学习如何编写适当的代码,他们可以使用任何他们想要的软件,比如R、Python等,但他们只需要证明他们已经掌握了使用这些模型来解决研究问题。我设计这门课是因为我们的教职员工认为这是我们课程中缺乏的一个领域,教授这门课一直是一种乐趣。有些学期我让他们组成大团队,有些学期我让他们独立工作。我仍在稍微调整这一点,但这给了他们合作进行这类建模项目的机会。所以这是一门有趣的课程。然后在上一个冬季学期,我教授了应用抽样。这是一门我们教授从更大总体中抽样的应用的课程,涉及分层抽样、整群抽样等技术,以及如何处理从概率样本中选择时计算的权重等。非常注重应用,它使调查方法学的学生获得从头设计样本的专业知识,比如一个良好的科学概率样本,他们可以用来对总体进行良好的推断。作为该课程的一部分,他们有一个抽样项目,必须与团队合作,撰写一份备忘录,描述针对给定研究问题或客户需求的样本设计。他们也会获得这种经验。然后我提到我在ISR暑期调查研究技术学院教学,这实际上正在发生。我正在教授一门关于调查数据分析的课程,处理来自复杂样本设计的数据,例如如何使用权重和估计,如何基于调查数据进行总体推断。再次强调,非常注重软件。我们有一个实验室,我们监督学生在实验室中做什么以及他们如何处理数据集和执行分析。许多学生喜欢这门课,因为他们再次获得了良好的实用技巧,当他们实际处理调查数据并希望正确处理并做出良好的总体推断时可以使用。这是三门课程。我们刚刚启动了一个新的研究教育项目,一系列关于“响应式调查设计”的短期课程。这是一种非常数据驱动的调查设计,你在数据收集过程中修改调查设计参数,做出关于改变数据收集模式的决定,例如从面对面切换到邮件,或从邮件切换到网络等。你试图根据数据收集中发生的模式,找出哪些设计特征对某些个体最有效。这是调查方法学中一个非常酷的新领域。我们从NIH获得了一项名为R25机制的资助,用于资助这类研究教育项目的发展。我们在过去几周刚刚教授了11门关于响应式设计各个方面的短期课程,这是我们首次推出整个项目。在分析课程和帮助所有这些11门短期课程之间,我们有许多访问讲师,我实际上教授了其中四门,但监督一切仍然需要大量工作。但一切进展顺利。我们正在整理评估,试图向非统计学家、非调查方法学家介绍自适应和响应式调查设计的理念,这些领域将从这些技术中受益。我们对此了解很多,但我们试图传播关于这如何在数据收集中节省资金、提高效率等信息。所以这非常令人兴奋。过去几周有点紧张,但启动这个项目真的很令人兴奋。就像我说的,我们正在整理评估,所以我认为每个人都很高兴,我们将继续下去。这是一项为期五年的资助,旨在真正使这个项目成为现实,我们对此感到非常兴奋。这是第二年,我们将看看一切进展如何。
所以是教授那些非统计学家,让他们在早期就知道该问什么问题?
正是如此,回到最初的观点。这样他们就能理解所有这些设计含义,并知道在考虑自己的研究时前期该问什么问题。



Ambuj的教学经验
Ambuj,谈谈你教授的一些课程。
我教过概率论导论、R语言数据科学导论,以及我已经提到的Python课程。正如你所见,我教授许多基于编程的课程。教授基于编程的课程(包括我们在这里的这门课)的有趣之处在于,你立即可以看到学生能用它做些什么。你给他们这个非常强大的工具——编程语言,以及像NHANES这样的数据集的访问权限,学生们会回来告诉你“看,这是我做的”,这真是一件美好的事情。我有过学生来说“因为我在R或Python方面的技能,我得到了这份工作或这次研究经历”的例子。所以看到这种成长是很好的。我热爱教学的另一个部分是,如果你在学术界之外可能不知道,大多数人教学不是因为他们想教,而是因为他们想学。学习某件事的最好方法就是教它,它会残酷地暴露你知识中的所有缺陷和漏洞。虽然准备可能非常紧张,但完成教学后,你确实会感到自己作为学习者成长了。
非常正确。

教学中的互动与激励
我也从事一些教学,我教授那门入门统计课程,有数千名学生,可能与你那些动手实践的小班课有些不同。但我为了打破讲座节奏所做的一件事是,给他们一些机会通过“答题器”问题来测试他们的知识。当学生们开始做这些题,并在这个大课堂环境中开始互相交谈时,你会看到答对问题的学生百分比通过他们之间的对话和讨论而增加,这真是太棒了。现在,你们知道我为了激励学生,让他们在答题器问题上尽力做到最好,会做什么吗?我听说过。我承诺,如果他们在答题器问题上100%正确,我就做一个侧手翻。有些班级得到了几个侧手翻,有些则没有。非常有趣。我们课程中的一个数据集是关于侧手翻的,这是一个有趣的探索数据集。我们让团队中的一些同事和其他人做了侧手翻,我们测量了他们完成侧手翻所需的距离、可能与此相关的不同特征,以及该侧手翻在1-10量表上的质量评分。但我想我们还缺少一些数据点。我认为我们还没有你的数据,所以我们采访后再谈这个。
给学习者的建议

好的,也许我们用一些建议来结束。你们会给我们的学习者什么建议?无论是关于学习统计学、参加这门课程、学习Python,你们想从自己的个人学习经历中分享些什么?因为正如我们所讨论的,我们在教学和研究活动中也在不断学习。
任何基本建议?
我真的很赞同Ambuj刚才说的。我最喜欢的教授之一,Julian Faraway,曾经在密歇根大学统计学系,现在在英国巴斯大学,他说过:除非你坐下来动手做,否则你永远不会真正学会统计学。观看视频并说所有这些概念都有道理是一回事,但直到你拿到一些数据,坐下来写一点代码,尝试实际做一些分析,解释这些分析的结果,统计学才不仅仅是你在概念上掌握的东西。你需要确保掌握了关键概念,同时也精通如何实际完成一些事情:坐下来处理一些数据,运行一些分析,理解这些分析的意义。所以我想给的最重要的建议是,利用这些机会,拿一些数据集,运行一些分析,理解代码的含义以及它为你做了什么。你越多地练习编写自己的代码,学习如何管理数据、操作数据、理解数据的来源,从长远来看,你就会成为一个更好的统计学家或数据分析师,因为实践真的能造就完美。我认为这对统计学尤其正确。犯一些错误,运行一些代码,看到一些错误信息,只有当你开始动手做并经历这个过程时,它才会真正理解。我想我能给的最重要的建议是,甚至超越专项课程中已有的数据集,去找一些其他数据,尝试运行相同的技术,并意识到“哇,我可以
5:数据中的精彩发现 📊

在本节课中,我们将探讨数据的多种形态及其应用。数据不仅仅是数字,它可以是图像、文字、音频等多种形式。我们将通过具体例子,了解如何从这些不同类型的数据中提取信息,并展示统计学在其中的作用。
数据可以是数字
上一节我们介绍了数据的多样性,本节中我们来看看最常见的数据形式:数字。人们通常将数据与电子表格或数字列表联系起来。在本课程中,我们将使用一个名为“国家健康与营养检查调查”(NHANES)的数据集,该数据集由美国疾病控制与预防中心收集。
以下是NHANES数据集中的一些变量示例:
- SEQN:受访者序列号。
- RIAGENDR:性别。例如,
1可能代表男性,2代表女性。 - RIDAGEYR:受访者年龄。
数据可以是图像
除了数字,数据也可以是图像。图像数据可以通过算法转化为数字信息,从而进行分析和处理。

以下是图像数据的一些应用:
- 特征脸(Eigenfaces):这是一种将人脸图像表示为数字向量的技术。公式上,一张人脸图像可以表示为一系列“特征脸”的线性组合:
人脸 ≈ a1*特征脸1 + a2*特征脸2 + ... + an*特征脸n。 - 人脸识别与交换:例如,Snapchat等应用利用类似技术定位人脸并进行换脸。
- 自动标记:Facebook等平台使用面部识别软件,在用户上传照片时自动标记图中人物。

卫星图像的应用


卫星图像是另一种重要的图像数据形式,它能提供宏观的地理和环境信息。

以下是卫星图像的几种用途:

- 测绘:估算海岸线位置或特定区域的森林覆盖率。
- 气象追踪:跟踪风暴系统的移动路径。
- 灾害评估:回顾并评估风暴系统造成的破坏程度。

交互示例:谷歌“猜画小歌”
为了更直观地理解图像识别,我们可以看一个交互例子:“谷歌猜画小歌”。在这个游戏中,用户绘制简笔画,系统尝试实时识别所画内容。
其核心是神经网络模型。当你绘画时,系统将你的笔画坐标序列 [(x1, y1), (x2, y2), ...] 输入模型,模型会输出一个概率分布,预测你所画物体属于各个类别(如“背包”、“飞机”)的可能性。
如果模型未能正确识别,例如将“短怪物”识别为“熊”、“海龟”或“泰迪熊”,我们可以查看其他用户是如何成功绘制“短怪物”的。这有助于理解模型是如何“学习”和“理解”这些视觉概念的。
数据可以是文字
文字是信息的载体,同样构成了一种数据形式。通过分析文本,我们可以发现模式、生成新内容或进行分类。
以下是文本数据的一些应用:
- 文本生成:例如,有人利用所有七部《哈利·波特》书籍的全文,通过算法训练模型,生成了新的章节。这展示了从大量文本数据中学习语言模式并创造新内容的能力。
- 电子健康记录:其中包含大量描述性文字,通过匹配姓名等标识符,可以整合来自不同机构的记录,形成完整的个人健康史。
- 文档分类:通过分析文档中的用词,可以自动判断其所属类别,例如将其归类到报纸的“商业”、“体育”或“本地”板块。这通常涉及计算文档中特定词汇的频率向量,并与已知类别的特征进行比较。
- 词嵌入与去偏:词语在模型中被表示为高维空间中的向量(即词嵌入),这些向量包含了语义关联。例如,“男人”之于“程序员”可能类似于“女人”之于“家庭主妇”,这反映了社会偏见。当前的研究正致力于开发技术,以减少词嵌入中存在的这类偏见。
数据可以是音频
我们周围的声音也是一种数据。音频数据可以被记录、分析、编辑甚至合成。
以下是音频数据处理的几个例子:
- 歌曲识别:Shazam等应用能够录制一段音频片段,提取其声学指纹(一种数字摘要),并与数据库进行匹配,从而识别歌曲。
- 语音编辑:使用Adobe Audition等软件,可以改变音高、消除噪音或进行其他编辑,从而改变声音效果。
- 语音合成与复制:近年来,技术已经发展到仅需某人约50个单词的录音,就能训练模型合成出模仿该人声音的新音频,使其“说出”原本未说过的话。
历史案例:弗洛伦斯·南丁格尔
最后,我们以一个历史案例来总结。弗洛伦斯·南丁格尔不仅是现代护理学的奠基人,也是统计学的先驱之一。在克里米亚战争期间,她系统记录了士兵病人的信息。

她创造了一种名为“鸡冠花图”(coxcomb)的图表,这实际上是现代时间序列图、箱线图和饼图等多种图表的基础。通过分析这些数据,她比较了不同季节中由疾病(可预防)、创伤和其他原因导致的死亡率变化。
她的工作清晰地表明,通过系统收集和可视化数据,可以揭示重要规律,并推动切实的改进。
本节课中我们一起学习了数据的多种形态——数字、图像、文字和音频,并了解了如何从这些数据中提取有价值的信息。从谷歌“猜画小歌”的实时识别,到《哈利·波特》的文本生成,再到南丁格尔的开创性图表,我们看到数据无处不在,且通过适当的分析方法,我们可以从数据中发现精彩的故事和深刻的见解。
6:数据来源探析 📊

在本节课中,我们将深入探讨数据的来源及其重要性。理解数据如何产生,是选择正确统计分析方法的关键前提。我们将介绍两种主要的数据类型,并讨论一个核心的统计假设——数据的独立同分布性。
🔄 两种主要的数据来源
上一节我们强调了理解数据来源的重要性,本节中我们来看看数据主要来自哪两种途径。
数据主要分为两大类:一类是有机过程数据,另一类是设计收集数据。
有机过程数据
有机过程数据是由计算机信息系统生成,或从音视频记录中提取的数据。其共同点是,它们作为某个过程的有机结果自然产生,并且通常是随时间推移生成的。
以下是几个常见的例子:
- 金融或销售交易:例如股票市场交易,每天发生大量事件并被记录,形成庞大的数据集。
- Netflix观看历史:平台记录用户的完整观看历史,这些数据自然产生,构成了用于预测用户兴趣的大数据集。
- 网络浏览活动:记录用户访问了哪些网页、停留了多久。所有用户的这些活动叠加,形成了海量的浏览数据。
- 体育赛事数据:从职业联赛到学校比赛,关于球队和个人表现的各种指标和结果被记录下来。
- 温度与污染传感器:设置在各地的监测站持续收集环境数据,每秒可能产生多次测量值。
所有这些过程都会生成海量数据,这正是我们常听到的“大数据”一词所指。处理这些大数据集需要大量的计算资源。数据科学家的任务就是从这些数据中挖掘趋势和有趣的关系,但仅将数据整理成适合分析的格式,本身就需要巨大的计算投入。
设计收集数据
另一种主要的数据类型来源于更具设计性的数据收集。这不是像棒球比赛那样自然的有机过程,而是为了专门解决特定研究目标而设计的特定研究。
以下是设计数据收集的常见形式:
- 从总体中抽样调查:从感兴趣的目标总体中抽取个体样本,并就特定话题进行访谈。因为我们很难测量总体中的每一个人,所以通过设计样本并询问问题来了解总体情况。
- 推文内容分析:从推特上提取推文,然后由研究团队根据特定编码方案进行分析,以了解人们对某个话题的表达频率和方式。这是从每日产生的海量推文总体中,设计提取一个子集进行研究。
设计数据通常具有以下特点:涉及从总体中抽样、对样本实施精心设计的调查问题。与有机过程数据相比,这些数据集通常规模小得多,从计算角度更容易处理,并且数据收集具有非常明确的目的。
在本系列课程中,我们将同时使用这两种类型的数据。稍后我们会更详细地讨论抽样,但在不同的示例中,我们都会考虑这两种数据类型及其带来的不同考量。
⚖️ 核心概念:数据的独立同分布性
在探讨了数据的两大来源后,一个随之而来的重要问题是:无论数据来源如何,我们都需要问,数据是否可以被视为 IID?
IID 代表 独立同分布。这是一个核心的统计假设。
- 独立:指的是感兴趣变量的观测值完全独立于所有其他观测值。不同个体(如不同股票交易、不同棒球比赛、不同调查受访者)的测量值之间没有相关性。
- 同分布:指的是我们观察到的所有值都来自同一个统计分布。
公式表示:如果一组随机变量 ( X_1, X_2, ..., X_n ) 是 IID 的,则满足:
- 独立性:( P(X_1, X_2, ..., X_n) = P(X_1)P(X_2)...P(X_n) )
- 同分布:所有 ( X_i ) 都服从相同的概率分布 ( F )。
IID 数据的例子与意义
设想一所大学大型统计学导论课程的期末考试成绩。我们可以将其视为 IID 观测值:
- 每个学生独立作答并获得分数。
- 所有分数可能共同服从一个自然的正态分布(钟形曲线)。
在数据满足 IID 的假设下,我们可以有效地估计该分布的特征(如平均分、方差、极端百分位数),并对这些特征进行统计推断(例如估计总体平均分),同时还能确定这些估计值的精确度。IID 假设是许多统计方法能够有效应用的基础。
非 IID 数据的情况
那么,如果数据不满足 IID 假设呢?以下是一些非 IID 数据的例子:
- 违反独立性:如果考场中学生互相作弊,相邻学生的分数会相似,那么这些分数就依赖于其他学生的分数,不再独立。
- 违反同分布性:男性和女性的平均分数可能不同,这意味着考试成绩存在不同的子分布。或者,来自同一讨论班的学生,因为助教教学效果不同,分数分布也可能不同。
当数据非 IID 时,我们需要在分析中考虑这些依赖性和差异,这可能意味着需要使用不同的分析程序。我们后续课程中将讨论在不同设定下的分析方法。
📝 重要注意事项与总结
在开始任何数据分析之前,我们必须始终考虑数据的来源。需要问的关键问题包括:
- 我们能否对数据应用那些假设数据为 IID 的统计程序?
- 数据是来自有机过程吗?该过程是否在数据中引入了依赖性?
- 数据是来自设计收集吗?在进行最终分析时,我们是否需要考虑该设计的特点?
理解数据来源是决定使用何种分析程序的重要信息。在本课程后续部分,当我们开始讨论抽样以及用于设计样本的分析程序时,我们将更详细地阐述设计数据收集和 IID 的概念。

本节课中,我们一起学习了数据的两种主要来源(有机过程数据与设计收集数据),并深入探讨了“独立同分布”这一核心统计假设的含义、重要性以及当该假设不成立时的影响。牢记数据来源是进行严谨统计分析的第一步。
7:变量类型详解 📊

在本节课中,我们将学习统计学中不同类型的变量。理解变量类型至关重要,因为它决定了我们如何查看、总结和分析数据。
概述
我们将从美国国家健康与营养调查(NHANES)数据集中选取四个变量作为示例,探讨定量变量与分类变量的区别及其子类型。
变量示例
以下是NHANES数据集中的五个个体及其四个变量:
| 个体ID | 身体质量指数 (BMI) | 种族 | 年龄 | 成人指示变量 |
|---|---|---|---|---|
| 1 | 25.3 | 3 | 34 | 1 |
| 2 | 22.1 | 1 | 12 | 0 |
| 3 | 28.7 | 4 | 45 | 1 |
| 4 | 19.8 | 2 | 8 | 0 |
| 5 | 30.2 | 5 | 50 | 1 |
种族编码说明:
- 1:墨西哥裔美国人
- 2:其他西班牙裔
- 3:非西班牙裔白人
- 4:非西班牙裔黑人
- 5:其他
成人指示变量编码:
- 1:年龄 ≥ 18岁
- 0:年龄 < 18岁
定量变量与分类变量
上一节我们介绍了数据集中的变量。现在,我们来思考一个问题:能否分别计算BMI和种族的平均值?
对于BMI,计算平均值是合理的,因为它是一个数值型测量值。例如,我们可以计算数据集中所有个体的平均BMI,以了解该变量的中心趋势。
# 示例:计算BMI平均值
bmi_values = [25.3, 22.1, 28.7, 19.8, 30.2]
average_bmi = sum(bmi_values) / len(bmi_values)
print(f"平均BMI: {average_bmi}")
然而,对于种族变量,计算平均值则缺乏直观意义。因为种族是分类编码,平均值(如2.7)无法提供有意义的解释。尽管某些分析方法可能对分类变量取平均,但通常我们将其视为分类变量处理。
📈 定量变量
定量变量是数值型、可测量的量,通常支持算术运算(如BMI)。定量变量进一步分为连续型和离散型。
连续型定量变量
连续型变量可以在区间内取任意值,有无限多个可能值。例如:
- 身体质量指数 (BMI)
- 身高或体重
- 时间(如跑一英里所需时间)
公式表示:
若变量 ( X ) 表示身高,则 ( X \in \mathbb{R}^+ ),可取值如 170.5 cm、175.2 cm 等。
离散型定量变量
离散型变量是有限个可数值的集合。例如:
- 家庭中的子女数量(如1、2、3,但不能是2.3个孩子)
代码表示:
# 示例:离散变量“子女数量”
children_count = [1, 2, 3, 0, 4] # 只能为整数
🏷️ 分类变量
分类变量(也称定性变量)将个体或项目分为不同组别(如种族)。分类变量进一步分为有序型和无序型。
有序分类变量
有序变量具有内在的顺序或排名。例如:
- 学校年级:大一、大二、大三、大四(有自然顺序)
无序分类变量
无序变量没有排名意义,类别顺序不影响含义。例如:
- 种族
- 婚姻状况(如已婚、单身、离异)
📝 随堂测验解析
以下是两个测验题及其解析,帮助巩固所学概念:
问题1:年龄变量(报告为整数)应视为哪种类型?
答案:尽管年龄常以整数报告,但它本质上是连续型定量变量。因为年龄可以包含小数(如8.5岁),且时间相关变量通常按连续型处理。
问题2:成人指示变量(1=成人,0=未成年人)属于哪种类型?
答案:这是一个无序分类变量。虽然它由年龄(定量变量)转换而来,但编码为类别(成人/未成年人),且类别间无顺序意义。
总结
本节课我们一起学习了变量的主要类型:
- 定量变量:数值型、可测量,包括连续型和离散型。
- 分类变量:用于分组,包括有序型和无序型。

理解变量类型是数据分析的基础。在后续课程中,我们将学习如何根据不同变量类型选择合适的汇总和可视化方法。
8:研究设计方法论 📊

在本节课中,我们将学习研究设计的基本概念。研究设计涵盖了从数据驱动研究的准备到具体问题分析的全过程。我们将探讨不同类型的研究设计,包括探索性与验证性研究、比较性与非比较性研究,以及观察性研究与实验研究。理解这些概念对于设计有效的数据分析至关重要。
🔍 探索性与验证性研究
上一节我们介绍了研究设计的整体范畴,本节中我们来看看研究设计的两种主要类型:探索性研究与验证性研究。
科学方法的目标是提出一个可证伪的假设,然后通过收集数据来检验它。这种针对单一预设问题进行数据收集和分析的研究,被称为验证性研究。
相比之下,探索性研究是在没有预设具体问题的情况下,直接收集和分析数据。虽然探索性研究也能提供信息,但我们必须警惕模型过拟合、多重检验和P值操纵等问题。从一个探索的数据集中提出的问题越多,得出误导性结论的可能性就越大。
⚖️ 比较性与非比较性研究
了解了研究的目的性分类后,我们来看看研究在内容上的另一种分类:比较性与非比较性。
许多研究本质上是比较性的,其目标是将一个量与另一个量进行对比。
以下是几个比较性研究的例子:
- 比较使用不同肥料的土地上的橙子产量。
- 比较选民对一位候选人与另一位候选人的偏好。
- 比较观众点击两个不同版本在线广告的比率。
在非比较性研究中,重点在于估计或预测绝对量,而非进行明确的比较。
以下是几个非比较性研究的例子:
- 预测一家公司一年后的股票价值。
- 估计服用某种药物后血压的绝对降低值。


👁️ 观察性研究与实验研究
上一节我们根据研究内容进行了分类,本节中我们将探讨数据收集方式上的一个根本区别:观察性研究与实验研究。
基于数据的实证研究,其最重要的方面之一在于比较是通过观察还是实验进行的。
观察性数据是自然产生的。其对比基于个体自我选择进入不同的组别。

而在实验中,研究者会刻意地以不同方式处理不同的个体。通常涉及对受试者进行操纵或分配处理。
以下是观察性研究的例子:
- 为了识别吸烟对健康的影响,我们可能会比较吸烟者与非吸烟者的寿命或其他结果变量(如肺癌状况)。
- 为了确定教师经验对学生学习的影响,我们可能会比较经验较少教师班级的学生与经验较多教师班级学生的标准化测试分数。
以下是实验研究的例子:
- 为了比较施肥与不施肥田地的生菜产量,我们可以将田地划分为若干地块,并随机分配某些地块施肥,其他地块不施肥。
- 为了评估人们是否更可能点击两个版本中的一个在线广告,我们可以随机让人们看到其中一个版本,然后比较点击率。
在实验中,我们通常关注将受试者随机分配到不同的处理组。在观察性研究中,更常说的是受试者暴露于某种条件,而非被分配。因此,观察性研究更为被动,且基于自我选择。当然,观察性研究很重要,当随机分配不切实际或不道德时,必须使用它们。

⚠️ 研究设计中的关键考量
在讨论了主要的研究设计类型后,我们需要了解影响研究有效性的几个关键因素。
一般来说,更多的数据能产生更多信息。但数据收集的方式至关重要。如果一项研究收集的数据包含关于感兴趣问题的信息太少,那么结果将不会很有信息量。
功效分析是一个评估给定研究设计是否可能产生有意义发现的过程。功效的计算方式取决于将要执行的分析,我们将在后续课程中涉及。
偏差是另一个问题,当测量系统性地偏离目标,或者样本不能代表感兴趣的总体时,就会出现偏差。偏差在任何类型的研究中都可能成为问题,但观察性研究对此稍微更脆弱一些。
📝 总结
本节课中,我们一起学习了研究设计的基本方法论。我们探讨了探索性研究与验证性研究的区别,比较性与非比较性研究的目标差异,以及观察性研究与实验研究在数据收集方式上的根本不同。我们还简要提及了数据量、功效分析和偏差等影响研究质量的关键因素。这些概念在我们开始处理实际数据并查看更多示例时,将变得更加清晰。
9:Jupyter Notebook入门(选读)📓

概述
在本节课中,我们将学习Jupyter Notebook的基础知识。Jupyter Notebook是一个基于网页的交互式开发环境,它将成为本课程中运行Python代码的主要工具。通过学习,你将能够使用Jupyter Notebook创建自己的交互式文档。

什么是Jupyter Notebook?🤔
Jupyter是一个基于网页的交互式开发环境,支持多种编程语言,但最常与Python编程语言一起使用。
Jupyter提供的交互式环境使学生、科学家和研究人员能够在单个文档中创建可重复的分析并构建叙述。
现在,让我们来看一个由密歇根大学的Richard Steyren完成的Jupyter Notebook示例。
你可以看到,他实际上利用一个交互式文档来整理和撰写了一篇完整的研究论文。有趣的是,它不仅包含文本,还能够将Python代码直接嵌入到文档中,这正是Jupyter Notebook如此特别的原因。
Jupyter Notebook的核心功能
接下来,我们将了解Jupyter Notebook的几个核心功能:文件浏览器、Markdown单元格与语法、内核、变量与环境、命令模式与编辑模式,以及提高工作效率的快捷键。
文件浏览器
要使用文件浏览器,你可以点击菜单栏中的“文件”,然后选择“打开”。
你会看到它带我进入了一个包含我所有文件的目录。你可以从自己的电脑上传文件,然后创建新的文本文件、文件夹、终端或任何特定库或编程语言的Notebook。
Markdown简介
现在我们已经了解了文件浏览器的样子,让我们来讨论一下Markdown是什么。
本质上,Markdown是一种使用纯文本格式化语法的标记语言。这意味着我们可以使用键盘上的各种符号作为指示符来修改文本。
我们可以实现的功能包括:创建标题、使用粗体或斜体修改文本、创建有序和无序列表、链接到不同的网站和URL、制作表格、嵌入图像等等。
现在,我将展示一些如何完成这种格式化的例子。
创建标题
要创建标题,我们只需使用井号(#)。使用的井号数量决定了标题的大小。
# 一级标题
## 二级标题
### 三级标题
文本修饰
我们可以使用星号(*)或下划线(_)来创建斜体或粗体,具体取决于使用的符号数量。
*斜体文本* 或 _斜体文本_
**粗体文本** 或 __粗体文本__
***粗斜体文本*** 或 ___粗斜体文本___
我们还可以使用波浪号(~)来划掉文本。
~~删除线文本~~
列表
你可以通过指定数字来创建有序列表,也可以创建子列表。无序列表可以使用星号、减号或加号。
1. 第一项
2. 第二项
* 子项
- 另一个子项
链接
你可以链接到网站,并为链接创建标题。
[密歇根大学网站](https://umich.edu)
我想提一下,网上有很多Markdown语法参考。我在此Notebook中包含了一个,链接在这里。这是一个非常全面的示例,展示了如何在Jupyter Notebook中创建所有这些不同的格式。
内核、变量与环境
在Jupyter Notebook中,Notebook内核是一个计算引擎,用于执行Notebook文档中包含的代码。有针对各种编程语言的内核,但我们只使用Python内核,它在我们的文档中执行Python代码。
作为补充说明,当打开一个Notebook时,关联的内核会自动为你启动,这非常方便。你可以在右上角看到我们的内核状态,显示为“Python 3”,这正是我们想要的。
此外,你可以转到菜单栏,点击“内核”->“更改内核”,并选择所有这些不同的选项,但我们将坚持使用Python 3。
现在,我来展示一下Python代码单元格的样子。你可以通过点击顶部工具栏上的“运行”按钮来执行此代码。

你可以看到,这个Python单元格已经运行,并且我们打印了输出,这就是一个Python代码单元格。
重申一下,内核是我们Notebook的后端,它不仅执行我们的Python代码,还存储已初始化的变量和环境。

让我们看一个例子,了解当我们初始化一个变量时,它如何被存储在我们的环境中。这里我们将用数字1738初始化变量x,然后打印它,我们可以看到输出在那里。
然后让我们再打印一次。正如我提到的,我们的变量存储在内核环境中。现在,如果我们重启内核,我们所有的变量都会丢失。因此,重要的是要注意,如果你的内核出现任何问题,你将不得不重新初始化你的变量。
例如,因为我们现在已经重启了内核,我们的变量x现在未定义,我们在文档中得到了一个错误。现在,如果我们重新初始化x,这段代码就能正确执行。
我想补充的一点是,你实际上可以在文档中嵌入用户输入。这正是这段代码块所做的。name = input(“What is your name? “),然后打印你输入的名字。例如,我的名字是Jack,然后这个代码单元格正确执行。
现在,需要提及的一个重要点是,Jupyter Notebook具有内联单元格执行功能。这意味着一个单元格必须在其操作完成后,另一个单元格才能被执行。
一个例子是,如果我们运行接受输入的代码块,然后尝试运行下面的这一行。我们可以看到,这个星号(*)表示我们之前尝试运行的单元格尚未完全执行。
现在你可以看到,如果我们在这里再次输入我们的名字,星号消失了,被一个数字取代,并且这些单元格现在被打印出来。这绝对是你需要牢记的一点,它可以在未来使用这些Notebook时避免许多复杂情况。
命令模式与编辑模式及快捷键
我想讨论的最后一件事是命令模式与编辑模式,并讨论快捷键以及它们如何提高你的工作效率。
Jupyter Notebook有编辑模式和命令模式,模式可以通过单元格左侧边框的颜色轻松识别。例如,这里我们看到是绿色的,我们处于编辑模式,所以我们可以添加或删除文本。然而,如果我们想进入命令模式,我们可以看到单元格边框是蓝色的。
这使我们能够在这里输入不同的设置。例如,如果我们想切换单元格行号,当我们在命令模式下时,我们就能做到这一点。现在你可以在左侧看到,我们的行号出现了。
为了过渡到快捷键,我们可以简单地通过按键盘上的字母L来切换行号。当然,首先我们必须处于命令模式,由蓝色边框指示。按L可以移除或切换你的行号。
最后,我想讨论一下额外的快捷键,因为有很多快捷键可以提高你在使用Jupyter Notebook时的工作效率。与其必须去菜单栏(文件、编辑、视图、插入),你可以简单地使用命令模式,结合键盘上不同的按键组合。这个资源稍后可供你查看,我真心推荐。
如何安装Jupyter Notebook
需要注意的是,Coursera在课程内提供了嵌入式的Jupyter Notebook,因此除非你希望在自己的计算机上进一步探索Jupyter,否则不需要下载。
你可以查看官方安装指南。实际上,它只会推荐你使用Anaconda平台,该平台兼容Windows、Mac OS和Linux系统,实际上这就是我在个人电脑上使用的。下面在我的程序坞中有我的Anaconda Navigator。
我想谈的最后一件事是,作为学习者,你将如何查看这些Notebook。
如果我们进入第一周,重新滚动到作业部分,我们可以看到这里有一个Notebook。如果我们点击它,我们可以打开一个Notebook。这就是你在整个课程中操作的方式。应用程序正在加载,它很快就会弹出来。

总结
本节课中,我们一起学习了Jupyter Notebook的基础介绍。我们了解了Jupyter Notebook是什么,探索了其核心功能如文件浏览器和Markdown语法,理解了内核、变量与环境的概念,并区分了命令模式与编辑模式以及相关的快捷键。希望这个基础的Jupyter Notebook入门教程对你非常有帮助,并希望你对在课程中进一步深入学习它们感到兴奋。
10:Python数据类型(选读)📊

在本节课中,我们将学习Python中的基本数据类型。我们将了解每种类型的特点,并通过示例展示它们如何与之前课程中介绍的变量类型(数值型、分类型)相关联。掌握这些基础知识对于后续的数据处理和分析至关重要。
概述:数据类型与变量类型
上一节我们介绍了变量类型。本节中,我们将具体看看Python如何实现这些类型。Python内置了多种数据类型,它们可以分为两大类:数值型和分类型。数值型数据可以进行数学运算(如求平均值),而分类型数据则用于表示类别。
以下是本节课将涵盖的Python基础数据类型:
- 数值型:整数(
int)、浮点数(float) - 分类型:布尔值(
bool)、字符串(str)、空类型(NoneType) - 容器型:列表(
list),它可以容纳多种类型的数据。
数值型数据
数值型数据意味着对其进行数学运算(如求平均值)是有意义的。它进一步分为离散型和连续型。在Python中,离散型对应整数,连续型对应浮点数。
整数和浮点数的主要区别在于它们在计算机内存中的存储方式。存储一个整数或浮点数所占用的内存大小相同,但整数以其二进制形式精确存储,而浮点数则采用一种包含指数和小数部分的科学计数法形式存储,这可能导致微小的精度误差。
整数(int)
整数是没有任何小数部分的数字。我们可以使用Python的type()函数来查看任何对象的类型。
type(4) # 输出: <class 'int'>
type(0) # 输出: <class 'int'>
type(-3) # 输出: <class 'int'>
由于整数是数值型,我们可以计算其平均值。但请注意,在Python 3中,即使输入全是整数,求平均值的结果也会是浮点数。
# 计算整数列表的平均值
numbers = [2, 3, 4, 5]
mean_value = sum(numbers) / len(numbers)
print(mean_value) # 输出: 3.5
print(type(mean_value)) # 输出: <class 'float'>
浮点数(float)
浮点数用于表示带有小数点的数字,包括有理数和无理数。
type(3 / 5) # 输出: <class 'float'>, 值为0.6
type(4.0) # 输出: <class 'float'>, 即使4是整数,加上小数点就变成了浮点数
import math
type(math.pi) # 输出: <class 'float'>, π是一个无理数
浮点数的存储方式解释了为什么有时会出现0.6显示为0.6000000000000001这样的情况,这是二进制浮点数表示法带来的精度问题。计算浮点数列表的平均值同样会得到一个浮点数结果。
floats = [math.pi, 3/5, 4.1]
mean_float = sum(floats) / len(floats)
print(type(mean_float)) # 输出: <class 'float'>
分类型数据
分类型数据用于表示类别或品质,对其进行数学运算通常没有意义。它分为名义型和有序型。在Python基础类型中,布尔值、字符串和空类型属于名义型。有序型数据本身没有专门的类型,而是通过你如何使用其他类型(如列表)来体现顺序。
布尔值(bool)
布尔值只有两个可能的值:True(真)或False(假)。在Python中,它们是保留字,首字母必须大写。
type(True) # 输出: <class 'bool'>
type(False) # 输出: <class 'bool'>
布尔值在逻辑判断中非常有用。在底层,True被当作数值1处理,False被当作数值0处理。这意味着虽然布尔值是分类型,但有时计算其“平均值”可以理解为计算列表中True的比例。
bool_list = [True, 6 < 5, 1 == 3, None is None]
# 检查每个元素的类型
for item in bool_list:
print(type(item)) # 全部输出: <class 'bool'>
# 计算“平均值”(True的比例)
mean_bool = sum(bool_list) / len(bool_list)
print(mean_bool) # 输出: 0.5 (因为一半是True)
print(type(mean_bool)) # 输出: <class 'float'>
字符串(str)
字符串是由引号(单引号'或双引号")包围的任何文本。引号内的内容会被Python原样解读为文本,而不是代码。
type("This sentence makes sense.") # 输出: <class 'str'>
type("makes sentence this sense") # 输出: <class 'str'>
type("math.pi") # 输出: <class 'str'>, 注意这里不是数字π,而是文本"math.pi"
尝试对字符串列表进行数学运算(如求平均值)会导致错误,因为这没有数学意义。
string_list = ["dog", "koala", "goose"]
# mean(string_list) # 这行代码会引发 TypeError
空类型(NoneType)
None是Python中表示“空”或“无”的特殊值,它有自己的类型NoneType。它通常用于初始化变量或表示函数没有返回值。
type(None) # 输出: <class 'NoneType'>
x = None
type(x) # 输出: <class 'NoneType'>
与字符串类似,对None值进行数学运算也没有意义。
none_list = [None, None, None, None, None]
# mean(none_list) # 这行代码会引发 TypeError
列表(list):多功能容器
列表是一种可以容纳多个有序元素的容器。它的强大之处在于可以存储任意类型的数据组合,因此它既可以存储数值型数据,也可以存储分类型数据,其“类型”取决于你如何使用它。
以下是列表的一些关键特性示例:
# 列表可以包含混合类型
mixed_list = [42, 3.14, "hello", None]
for item in mixed_list:
print(type(item))
# 输出:
# <class 'int'>
# <class 'float'>
# <class 'str'>
# <class 'NoneType'>
# 对混合类型列表求平均值会报错
# mean(mixed_list) # TypeError
# 对纯数值列表求平均值有效
num_list = [1, 2, 3]
print(sum(num_list) / len(num_list)) # 输出: 2.0
# 列表通过索引(从0开始)保持顺序,可用于存储有序数据
ordinal_list = ["third", "first", "medium", "small", "large"]
print(ordinal_list[0]) # 输出: 'third'
# 列表可以排序,但对字符串排序是按字母顺序,这可能不符合业务逻辑
ordinal_list.sort()
print(ordinal_list) # 输出: ['first', 'large', 'medium', 'small', 'third']
总结与扩展
本节课中我们一起学习了Python的核心基础数据类型:用于数值计算的整数和浮点数;用于表示类别的布尔值、字符串和空值;以及可以容纳各种数据的列表。我们了解了它们的特性、如何用type()函数进行识别,以及哪些操作对它们是有意义的。
重要的是理解数据类型决定了你能对数据做什么操作。尝试对字符串求平均值或比较整数和
None的大小都会导致错误。
这些只是Python内置的基础类型。在实际的数据分析中,我们会使用如pandas和NumPy这样的强大库,它们引入了更专业的数据类型,例如DataFrame、Series和datetime对象。我们将在后续课程中逐步介绍它们。现在,你已经掌握了理解这些高级类型的坚实基础。

课程资源信息:
- 来源:密歇根大学《Statistics with Python》
- 章节:P10 - 9_Python数据类型(选读)
- 字幕:BV1dV411Q7j3
11:Python库与数据管理入门 🐍📊

在本节课中,我们将学习Python库的基本概念、如何查阅官方文档,以及使用Pandas库进行数据管理的基础操作。这些技能是进行统计分析和数据科学工作的基石。

Python库简介 📚
上一节我们介绍了课程概述,本节中我们来看看什么是Python库。
Python与其他编程语言一样,拥有大量额外的模块或库。这些库扩展了语言的基础框架和功能。可以将库视为一个函数集合,用于完成特定的编程任务,而无需自己编写算法。
在本课程中,我们将主要关注以下库:
- NumPy:用于处理数据数组和其他数学运算的库。
- Pandas:提供高性能、易用的数据结构和数据分析工具(如DataFrame)。
- SciPy:用于数值和科学计算的技术库。
- Matplotlib:用于制作图表和其他可视化的库。
- Seaborn:与Matplotlib类似,用于可视化和绘图任务。
- Statsmodels:实现许多统计技术的库。
理解文档 📖
上一节我们介绍了核心库,本节中我们来看看如何利用官方文档进行学习。
学习新编程语言时,文档极其重要。可靠且易于获取的文档对于编程语言的知识传递是绝对必要的。幸运的是,Python提供了大量详细的文档,解释了语言的语法、库等方方面面。
理解如何阅读文档对任何程序员都至关重要,它将成为学习Python复杂细节时的绝佳资源。
以下是Python标准库文档的链接,在本课程中你会逐渐熟悉它:
https://docs.python.org/3/library/
如果滚动到底部,可以看到文档讨论了内置函数、常量、内置类型等。例如,查看数值类型部分,数值类型包括int(整数)、float(浮点数)和complex(复数)。文档还提供了Python支持的算术和操作说明。
导入与使用库 ⬇️
上一节我们了解了文档的重要性,本节中我们来看看如何在代码中实际导入和使用库。
使用Python时,必须在脚本开头导入将要使用的库,以避免错误。以下语句导入了NumPy和Pandas库,并为它们指定了缩写名称,以使代码更整洁、易读。
import numpy as np
import pandas as pd
运行上述代码单元格后,我们就成功导入了NumPy(别名为np)和Pandas(别名为pd)。
导入库后,如何调用其中的功能呢?导入库后,可以通过在函数名前加上库名来调用其函数。例如,要使用NumPy库中的mean(平均值)函数,你需要输入np.mean。
为了避免在脚本中反复输入库名,通常为每个库定义一个两到三个字母的缩写。例如,NumPy缩写为np(如上所示),Pandas库通常缩写为pd。这允许我们使用np.mean而不是numpy.mean。
以下单元格展示了如何调用已导入库中的函数:
# 初始化变量a为一个NumPy数组
a = np.array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10])
# 计算数组a的平均值
print(np.mean(a))
我们使用NumPy库的mean函数计算了NumPy一维数组的平均值,如上所示,输出结果为5.0。
数据管理基础 🗃️
上一节我们学会了如何导入和使用库,本节中我们进入数据管理部分。
数据管理是统计分析和数据科学工作的关键组成部分。以下代码将展示如何通过Pandas库导入数据、查看数据和转换数据。
Pandas主要使用的数据结构称为DataFrame。这是一个二维数据表,其中行通常代表个案(例如,稍后将看到的卡特维尔测试参与者),列代表变量。Pandas还有一个一维数据结构称为Series,当访问DataFrame的单个列时会遇到它。
Pandas有一系列名为read_xxx的函数(其中xxx是占位符),用于读取不同格式的文件,例如read_csv。CSV代表逗号分隔值。其他文件格式包括Excel、JSON和SQL。
为了了解CSV文件的实际样子,我们查看原始的卡特维尔数据。可以看到,第一行包含列标题,如ID、age、gender等,它们都由逗号分隔,因此得名“逗号分隔值”。
接下来,我们将导入这个CSV文件。
# 首先,存储托管我们CSV文件的URL字符串
url = "https://raw.githubusercontent.com/UMstatspy/UMStatsPy/master/Course_1/Cartwheeldata.csv"
# 读取CSV文件,并通过调用Pandas库中的read_csv函数将其存储为Pandas DataFrame
df = pd.read_csv(url)
# 输出对象类型
print(type(df))
我们使用了read_csv函数,变量df(DataFrame)的类型是pandas.core.frame.DataFrame。
现在,我们如何在环境中访问并查看这些数据呢?我们可以使用DataFrame的head函数,它将显示数据的前五行,包括所有列标题。这是了解DataFrame和数据内容的好方法。
# 查看数据的前5行
print(df.head())
如果我们想输出整个DataFrame,可以直接打印变量df。总共有25条记录。建议使用head函数,尤其是在处理较大的数据集时,因为打印全部数据可能会显得混乱。
如果我们想收集关于数据的更多信息,可以使用以下函数查看列名和每列的数据类型。
# 输出列标题
print(df.columns)
# 输出各列数据类型
print(df.dtypes)
输出显示我们有以下数据类型:由int64指定的整数、浮点数(float)和对象(object)数据类型。
数据选择与切片 ✂️
上一节我们学会了如何查看数据概览,本节中我们来看看如何选择数据的特定部分。
数据管理中极其重要的一点是能够对DataFrame进行切片,仅选择数据的特定部分。有三种方法可以做到这一点:.loc函数、.iloc函数和.ix函数。但在本教程中,我们只介绍.loc和.iloc。
首先,.loc函数接受两个由逗号分隔的单个列表/范围操作符,第一个指定行,第二个指定列。
以下是使用.loc的一些示例:
# 示例1:选择所有行的‘Cartwheel Distance’列
print(df.loc[:, ‘Cartwheel Distance‘])
# 示例2:选择所有行的多个列(‘Cartwheel Distance‘, ‘Height‘, ‘Wingspan‘)
print(df.loc[:, [‘Cartwheel Distance‘, ‘Height‘, ‘Wingspan‘]])
# 示例3:选择前10行(0到9)的所有列
print(df.loc[0:9, :])
# 示例4:选择第10到15行(包含)的所有列
print(df.loc[10:15])
接下来是.iloc函数。.iloc函数是基于整数位置的切片,而.loc使用标签和列名。
以下是使用.iloc的一些示例:
# 示例1:选择DataFrame的前4行(基于整数位置0-3)
print(df.iloc[:4])
# 示例2:选择第1到5行(位置1-5),第2到4列(位置2-4)
print(df.iloc[1:6, 2:5])
.iloc函数不允许在函数内部使用标签和字符串。这是一个.loc和.iloc之间的重要区别。
探索数据内容 🔍
上一节我们学会了如何选择数据,本节中我们来看看如何探索数据的具体内容。
我们可能想观察特定列中的不同唯一值。让我们对Gender列进行此操作。
# 获取‘Gender‘列的唯一值
print(df[‘Gender‘].unique())
我们得到返回值[‘F‘ ‘M‘],代表女性和男性。因此,在我们的DataFrame的Gender列中,值只有M和F。
如果我们对GenderGroup列做同样的事情,会看到只有1和2,这很有趣。看起来这两个字段可能用途相同,都是用于指定男性与女性。
我们可以快速检查一下,通过仅观察这两列。
# 观察‘Gender‘和‘GenderGroup‘列
print(df.loc[:, [‘Gender‘, ‘GenderGroup‘]])
快速浏览一下,可以看到F对应GenderGroup中的1。在处理可能并非总是如此的数据时,我们可能想使用groupby之类的函数。
groupby函数将基本创建Gender和GenderGroup所有值的组合,以便查看不同的组合是什么。
# 按‘Gender‘和‘GenderGroup‘分组,查看组合
grouped = df.groupby([‘Gender‘, ‘GenderGroup‘]).size()
print(grouped)
输出表明我们只有两种类型的组合:(F, 1)和(M, 2)。这验证了我们最初的假设,即这两个字段本质上传达了相同的信息。

总结 📝
本节课中,我们一起学习了Python库的基础知识、查阅官方文档的重要性,以及使用Pandas进行数据管理的基本操作。我们介绍了如何导入库、查看和导入数据、使用.loc和.iloc进行数据选择与切片,以及探索数据内容(如查看唯一值和分组)。这只是数据管理的入门,在课程后续部分,将有阅读材料更深入地探讨Pandas的功能,以及如何利用其函数进行更高级的数据管理。
12:分类数据 📊 - 列联表、条形图与饼图

在本节课中,我们将学习如何处理和可视化分类数据。我们将重点介绍如何通过列联表(频率表)来总结分类数据,以及如何使用条形图和饼图来直观地展示这些数据。请注意,我们将避免使用语气词,并确保内容简单明了,适合初学者理解。
概述
分类数据是将个体或项目划分到不同组别的数据。本节课将以婚姻状况为例,展示如何总结和可视化这类数据。
数据示例与编码
我们使用的示例数据是婚姻状况。数据编码如下:1代表已婚,2代表丧偶,3代表离异,4代表分居,5代表从未结婚,6代表与伴侣同居,7代表拒绝回答,8代表不知道。幻灯片底部展示了一个包含六位不同个体及其婚姻状况的示例表格。
总结分类数据:频率表
总结分类数据最常用的方法是使用频率表,可以包含计数或百分比。我们创建一个表格,列出所有不同的类别(本例中有八个婚姻状况类别)、对应的计数以及各类别的百分比。
例如,在数据集的5560个个体中,有2683人已婚,467人丧偶,依此类推。要计算每个类别的百分比,只需将该类别的计数除以总计数。例如,已婚个体的百分比计算为 2683 / 5560 = 48.3%。
公式:
百分比 = (类别计数 / 总计数) * 100%
这是总结分类数据最常用的方法。
可视化分类数据:条形图
可视化分类数据最常用的方法是条形图。在条形图中,X轴代表婚姻状况的八个不同类别,Y轴代表每个类别的频率或计数。
例如,第一个条形显示已婚个体在我们的数据集中有2683人。
我们也可以将条形图中的计数替换为频率表中的百分比。这样,条形的形状和整体图形不会改变,但Y轴变为百分比而非计数。有时,显示百分比信息比实际计数值更有用。
对于名义数据(如婚姻状况),其变量顺序无关紧要,有时我们可能希望按降序重新排列条形。如果我们想知道哪些组别在总体中占比最大,这种排列会更有帮助。例如,我们可以看到已婚、从未结婚和离异是前三个类别。
因此,对于名义数据,可以以更有用的方式重新排列条形。
另一种选择:饼图
分类数据的另一种图形选择是饼图。但我们通常更推荐条形图,原因如下。
首先,如标签所示,对于非常小的切片,有时会出现重叠。例如,“拒绝回答”和“不知道”的标签相互重叠,难以阅读。根据所使用的程序,这可能难以解决。
饼图的另一个主要问题是,如果没有适当的标签,很难看出哪个切片更大。例如,在这个例子中,丧偶、离异和与伴侣同居的切片非常相似。如果没有显示百分比,可能很难辨别哪个部分在整体图形中占比更大。
这里我们可以看到离异是10.3%,但如果没有这个标签,可能难以分辨。因此,我们尽量避开饼图,更多地使用条形图。
总结
本节课中,我们一起学习了如何处理分类数据。我们看到,总结分类数据的最佳方法通常是使用包含计数或百分比(或两者)的频率表。同样,条形图是一种很好的可视化方法,可以使用计数或百分比。
如果你选择使用饼图,请务必谨慎。

图示说明:课程中使用的幻灯片展示了婚姻状况数据的频率表、条形图和饼图示例,帮助直观理解不同可视化方法的优缺点。
13:定量数据可视化 - 直方图绘制教程 📊

在本节课中,我们将学习如何使用直方图来初步探索和可视化定量数据。直方图是一种强大的工具,能帮助我们快速理解数据的分布特征。
什么是定量数据与直方图?
上一节我们介绍了数据类型,本节中我们来看看如何可视化定量数据。
定量变量是可以用数学运算处理的数值。例如身高、体重、收入、考试成绩、鞋码或抛硬币10次后正面向上的次数。定量变量分为离散型和连续型。
离散型随机变量,例如抛硬币10次后正面向上的次数,只能取整数值。而身高和体重可以取任意值,属于连续型变量。例如身高可以是5英尺6英寸、5英尺7英寸或5英尺7.5英寸,可以是这些数字之间的任何值。
直方图是对数据进行首次图形化展示的绝佳选择。它能让我们快速了解数据的样貌,以及后续可能想要分析的方向。
直方图的构成
以下是直方图的主要组成部分:
- Y轴:表示频率,即我们看到某个特定响应值的次数。
- X轴:表示我们的变量,在本例中是身高(英寸)。
- 矩形条(Bins):这些矩形被称为“箱”。箱的宽度可以根据你使用的软件进行调整。在本例中,使用Python并设置了10个箱,直方图会计算并显示落在每个特定范围内的个体数量。例如,在最左边的第一个箱中,我们可以看到样本中大约有3个人的身高约为62英寸。
描述直方图的四个核心方面
在分析直方图时,我们主要关注四个核心方面:形状、中心、离散程度和异常值。
1. 形状
形状是直方图的整体外观。它可以是对称的、钟形的、左偏的或右偏的。
2. 中心
中心指的是数据的集中趋势,通常用均值或中位数来描述。
3. 离散程度
离散程度描述数据的分散范围。我们可以讨论极差、四分位距、标准差或方差。对于直方图的初步分析,我们主要讨论极差。我们将在未来的课程中更详细地讨论四分位距、标准差和方差。
4. 异常值
异常值是那些远离数据主体的数据点。
实例分析:成年男性身高
现在,让我们再次查看成年男性身高的直方图,并应用这四个方面进行分析。
首先,我们来看形状。可以想象用一块布盖在数据上,可以看到它大致呈钟形分布。钟形分布在统计学中非常常见,且易于进行统计分析。我们还可以说它是单峰的,意味着它只有一个众数,因为我们在形状中只看到一个峰值。
接下来,我们讨论中心。由于它是钟形且对称的,中心正好在中间,大约在68英寸处。这里我描述的是中位数,大约是68。因为分布对称,均值也大约在68。
然后,我们讨论离散程度,这里我们主要讨论极差。极差是最大值减去最小值。我们可以看到最右边的最大值大约在75英寸,最左边的最小值接近62英寸。因此,极差大约是13英寸。请注意,我说的是“大约”,因为我是从图形上观察,而不是获取精确的数值。
最后,我们讨论异常值。对于这个案例,所有数据都相当集中,因此我们可以说没有明显的异常值。
综合描述
将这四个方面整合成一句话,可以这样描述:
成年男性身高的分布大致呈钟形,中心约在68英寸,极差为13英寸(从62英寸到75英寸),且没有明显的异常值。
这样一句话,你就可以传达给他人,让他们理解你所观察数据的形状、中心、范围和任何他们真正想了解的信息。
重要区别:直方图 vs. 条形图
关于直方图,需要知道的一个重要点是它与条形图不同。条形图用于分类数据,而直方图用于定量数据。
更多实例分析
上一节我们分析了一个对称分布的例子,本节中我们来看看偏态分布的情况。
实例二:旧金山薪资分布
以下是描述该直方图的要点:
- 形状:分布呈双峰(有两个峰值,一个在0附近,一个在约6万美元附近)且右偏(有一条长长的右尾)。
- 中心:中位数约为8万美元。由于右偏,均值会被拉向右方,大于中位数,可能约为8.5万美元。
- 离散程度:极差约为60万美元(最大值约60万,最小值0)。
- 异常值:在分布的高端存在异常值(例如,超过20万美元可能被视为异常值)。
综合描述如下:
旧金山薪资的分布呈双峰且右偏,中心约在8万美元,大部分数据集中在4万到12万美元之间,极差约为60万美元,高端存在异常值。
注意,这里我加入了“大部分数据集中在4万到12万美元之间”。这是因为对于右偏分布,我们需要告知他人数据的主体部分在哪里。高端的一些异常值可能不能代表大部分数据,因此大多数人收入在4万到12万美元之间是一个很好的补充信息。
实例三:考试成绩分布
以下是描述该直方图的要点:
- 形状:分布呈左偏(尾部向左延伸)且为单峰。
- 中心:中位数约为80分。由于左偏,均值会小于中位数,可能约为75分。
- 离散程度:极差约为85分(最高约100分,最低约15分)。
- 异常值:在分布的低端存在异常值(例如,低于50分可能被视为异常值)。
综合描述如下:
考试成绩的分布呈左偏,中心约在80分,大部分分数集中在65到90分之间,极差约为85分,低端(50分以下)存在一些异常值。
同样,我加入了“大部分分数集中在65到90分之间”。这是为了给听者一个概念,即大多数人的得分情况。如果我只告诉你极差是85分,你可能会以为也许大部分人都没考好,只有少数人考得好。但实际上,这次考试大多数人都考得不错。
总结
本节课中我们一起学习了如何使用直方图对数据进行初步的图形化展示。
我们讨论了描述直方图的四个主要方面:形状、中心、离散程度和异常值。利用这四个方面,我们可以构建一个一句话的摘要。通过这个摘要,你应该能够向任何人清晰地传达你的数据大致是关于什么以及它看起来是什么样子。

这是分析数据、为进一步探索数据提供思路的一个绝佳起点。
14:定量数据的数值摘要分析 📊


在本节课中,我们将学习如何为定量数据计算数值摘要。数值摘要能为我们提供关于数据分布的中心、离散程度和形状的精确数值描述,是对图形化表示(如直方图)的有力补充。
概述
上一节我们通过直方图等图形直观地了解了数据的分布。本节中,我们将深入探讨如何用具体的数字来量化描述数据的特征,包括中心趋势、离散程度以及识别异常值。
数值摘要的核心构成
以下是数值摘要中常见的核心统计量,它们共同构成了数据的“五数概括法”。
- 最小值:数据集中的最小数值。
- 第一四分位数:也称为第25百分位数,表示有25%的数据小于或等于此值。
- 中位数:也称为第50百分位数,表示有50%的数据小于或等于此值。其计算公式为:当数据量n为奇数时,
中位数 = 数据[(n+1)/2];当n为偶数时,中位数 = (数据[n/2] + 数据[n/2 + 1]) / 2。 - 第三四分位数:也称为第75百分位数,表示有75%的数据小于或等于此值。
- 最大值:数据集中的最大数值。
实例分析:成年男性身高
让我们回顾之前提到的成年男性身高数据,其直方图大致呈钟形(对称分布)。以下是其数值摘要示例:
最小值: 61.7 英寸
第一四分位数: 66.5 英寸
中位数: 68.3 英寸
第三四分位数: 70.1 英寸
最大值: 75.1 英寸
在此例中,中位数与均值相同(均为68.3英寸),这符合对称分布的特征。我们还可以计算四分位距,它是衡量数据离散程度的另一个指标。
四分位距 = 第三四分位数 - 第一四分位数 = 70.1 - 66.5 = 3.6 英寸。
实例分析:旧金山薪资
接下来,我们分析呈双峰且右偏分布的旧金山薪资数据。在右偏分布中,我们预期均值会大于中位数。以下是Python中describe()函数输出的摘要:
count 148654.000000 # 样本量 n
mean 74768.000000 # 均值
std 50517.000000 # 标准差
min -618.100000 # 最小值
25% 50416.000000 # 第一四分位数 Q1
50% 71427.000000 # 中位数
75% 93284.000000 # 第三四分位数 Q3
max 567595.000000 # 最大值
观察结果与预期一致:均值($74,768)确实大于中位数($71,427)。标准差约为$50,517,表示数据点平均偏离均值约5万美元。此外,最小值为负值(-$618.1),这提示数据可能存在录入错误或需要进一步调查的特殊情况。
实例分析:考试成绩
最后,我们查看呈左偏分布的成绩数据。对于左偏分布,我们预期均值会小于中位数。其数值摘要如下:
样本量 n: 100
均值: 76.3
标准差: 14.4
最小值: 14
第一四分位数 Q1: 68
中位数: 78
第三四分位数 Q3: 87
最大值: 100
结果再次验证了我们的猜测:均值(76.3)小于中位数(78)。中位数对异常值不敏感,是更稳健的中心度量。此数据的四分位距为 87 - 68 = 19。与全距(14到100)相比,IQR能更好地描述大部分数据的分布范围。
总结
本节课中,我们一起学习了定量数据的数值摘要分析。我们了解到:
- 五数概括法(最小值、Q1、中位数、Q3、最大值)和均值、标准差是描述数据核心特征的关键统计量。
- 数据的分布形态(对称、左偏、右偏)会直接影响均值与中位数的关系。
- 四分位距是比全距更稳健的离散程度度量,尤其当数据存在异常值时。
- 数值摘要应与直方图等图形化工具结合使用,以对数据形成全面而准确的理解。
- 分析数值摘要时,需保持批判性思维,对异常值(如负薪资)提出合理疑问。

通过掌握这些数值摘要,你将能够更精确、更深入地解读任何定量数据集。
15:标准分与经验法则 📊



在本节课中,我们将学习两个用于理解数据分布的重要工具:经验法则和标准分。我们将了解如何利用数据的平均值和标准差,快速判断一个数值在分布中的相对位置和“罕见”程度。
上一节我们介绍了描述数据分布形状的概念。本节中我们来看看一种非常常见且重要的分布形状——钟形分布,并学习与之相关的两个实用规则。

钟形分布与经验法则
许多变量和统计估计量会呈现出钟形分布,也称为正态分布。这种分布的特点是中间高、两边低,形状对称。
假设我们研究大学生在工作日晚上的睡眠时长,其分布近似钟形。数据显示,平均睡眠时长约为7小时。我们可以在对称分布的中心位置标记这个平均值。
为了解数据的分散程度,我们需要一个衡量离散度的指标。常与平均值一同报告的是标准差。在本例中,睡眠时长的标准差是1.7小时。标准差可以粗略地理解为:数值与平均值之间的平均距离。因此,大学生的睡眠时长平均会偏离7小时约1.7小时。
我们可以利用标准差这把“尺子”,在分布图上标记更多位置。
以下是基于经验法则的关键数值范围:
- 如果我们从平均值向两侧各移动1个标准差(即到达约8.7小时和5.3小时),在钟形分布中,我们预计会看到大约68% 的观测值落在这个区间内。
- 如果向两侧各移动2个标准差(即到达约10.4小时和3.6小时),我们预计大约95% 的观测值会落在这个更宽的区间内。
- 如果向两侧各移动3个标准差(即到达约12.1小时和1.9小时),我们预计几乎所有的观测值,约99.7%,都会落在此区间内。
这个关于钟形分布的规律被称为 68-95-99.7法则,也常叫做经验法则。它为我们判断一个数值是否“不同寻常”提供了便捷的参考框架。
标准分(Z分数)
经验法则给出了大致的范围。为了更精确地量化一个具体数值在分布中的位置,我们使用标准分。
标准分的计算公式是:
标准分 = (观测值 - 平均值) / 标准差
这个公式计算的是观测值偏离平均值多少个标准差单位。
让我们通过几个例子来理解标准分:
-
例1:睡眠10小时
如果一名学生通常睡10小时,其标准分计算如下:
(10 - 7) / 1.7 ≈ 1.76
这个正的1.76表明,该学生的睡眠时长比平均值高出约1.76个标准差。结合经验法则,我们知道95%的数据在平均值±2个标准差内(3.6至10.4小时)。10小时接近上限10.4,因此这个睡眠时长相对较长,较为少见。 -
例2:睡眠6小时
如果另一名学生通常睡6小时,其标准分为:
(6 - 7) / 1.7 ≈ -0.59
这个负的-0.59表明,该学生的睡眠时长比平均值低约0.59个标准差。这个值离平均值不远,属于比较常见的范围。 -
例3:已知标准分求观测值
假设朋友马克说他的睡眠时长远低于平均水平,标准分是-2.7。我们可以反推他的实际睡眠时长:
观测值 = 平均值 + (标准分 × 标准差)
观测值 = 7 + (-2.7 × 1.7) ≈ 2.41小时
计算可知,马克的平均睡眠时长只有约2.41小时,这解释了他为何常在凌晨2-3点回复邮件。
总结
本节课中我们一起学习了如何利用经验法则和标准分来理解数据。
- 经验法则适用于钟形分布,它告诉我们:约有68%、95%和99.7%的数据分别落在距离平均值1个、2个和3个标准差的范围内。
- 标准分则是一个通用工具,通过公式
(观测值 - 平均值) / 标准差计算,它能精确地告诉我们任何一个观测值相对于平均值的位置(以标准差为单位)。正分数表示高于平均值,负分数表示低于平均值,分数的绝对值大小表示偏离的程度。
掌握这两个工具,能帮助我们对数据的分布和单个数据点的相对位置形成快速、直观的判断。
16:📊 定量数据:箱线图解析

在本节课中,我们将学习一种名为箱线图的定量数据图形表示方法。我们将了解它的构成、如何解读,以及它如何帮助我们总结和比较数据集。
概述:什么是箱线图?
上一节我们介绍了定量数据的图形表示方法。本节中,我们来看看另一种强大的工具——箱线图。
箱线图本质上是对“五数概括法”的可视化呈现。如果你还记得,五数概括法包括:
- 最小值
- 第一四分位数
- 中位数
- 第三四分位数
- 最大值
箱线图将这五个统计量转化为一个简洁的图形,让我们能快速把握数据的中心、分布范围和潜在异常值。
箱线图的构成 🧩
以下是箱线图各部分的构成说明:
- 箱体:由第一四分位数和第三四分位数构成。箱体的长度就是四分位距,它衡量了中间50%数据的离散程度。
- 中位线:在箱体内部,用一条线标记中位数的位置,这是一个稳健的中心度量。
- 须线:从箱体边缘延伸出的线条,分别连接到最小值和最大值(在排除异常值的情况下)。因此箱线图也常被称为“盒须图”。
实例解析 📈
让我们通过几个例子来具体理解箱线图。
示例一:成年男性身高
我们首先看一个成年男性身高的数据。其直方图大致呈对称的钟形分布,中心大约在68英寸。对应的箱线图如下所示。

从箱线图中,我们可以清晰地读出中位数为68.3英寸,并且能直接看到最小值和最大值(约62英寸和75.1英寸),这是直方图无法精确提供的。这个对称的直方图也对应了一个中位数位于箱体中央的对称箱线图。
示例二:收缩压
现在来看收缩压的数据。这个分布明显不是对称的,它向右倾斜(即存在少数异常高的血压值)。箱线图能有效地展示这些异常值。
箱线图内置了识别异常值的规则,并将它们单独绘制出来,从而引起我们的注意。这些异常值可能是数据集中最有趣的部分。
示例三:小规模测验分数
这个例子展示了一个小数据集的箱线图,该数据在中间存在缺口,形成两个分数集群。然而,箱线图本身只是一个“箱子”,我们无法从图中直接看出数据中间有缺口或存在分组的情况。
这是箱线图的一个局限性:它有时会掩盖数据分布的某些形状特征,而直方图在展示形状方面通常做得更好。
示例四:多组数据比较
最后,我们来看一组并排展示的箱线图,它们显示了不同年龄和性别群体的收缩压情况。

以下是观察这些箱线图可以得出的结论:
- 年龄趋势:从年轻到年老,血压总体呈上升趋势。同时,箱体长度显示,年长群体的血压值通常比年轻群体更分散。
- 性别差异:在年轻群体中,男性的血压通常高于女性。但这种差异随着年龄增长而减小,并在最年长的群体中发生逆转,男性的血压反而低于女性。这可能是因为患有高血压的男性更早去世,导致该年龄组中参与比较的男性群体整体更健康。

这个例子表明,并排展示的箱线图在比较两个或更多观测数据集时非常有用,能让我们对数据有一个全面而直观的了解。
总结 ✨
本节课中我们一起学习了箱线图。
- 箱线图为五数概括法提供了出色的图形化展示。
- 它通过中位数展示中心,通过四分位距(箱体长度)和全距展示离散程度。
- 它内置算法,能识别并单独标出潜在的异常值。
- 箱线图的局限性在于可能隐藏数据分布的某些形状细节。
- 当需要比较多个数据集时,并排显示的箱线图是一个极其有效的工具。
17:交互式直方图与箱线图演示 📊📈


在本节课中,我们将学习如何使用一个交互式在线应用来探索数据。我们将重点了解如何生成和解读数据的箱线图与直方图,并学习如何上传自己的数据集进行分析。
概述
本节课我们将使用一个交互式工具,通过箱线图和直方图来可视化数据。我们将从默认的汽车数据集开始,然后学习如何上传并分析自定义数据集(如鸢尾花数据集)。通过分面功能,我们还能基于分类变量(如气缸数或花的种类)来比较不同组别的数据分布。
使用默认数据集
首先,我们使用应用提供的默认数据集。这是一个关于数十辆汽车的数据集,包含每加仑英里数、车重、排量、气缸数等变量。
我们将查看数据的数值摘要、箱线图和直方图。
点击“使用默认数据集”后,再点击“更新图表”。
以下是分析每加仑英里数(MPG)的结果:
- 数值摘要:包含五数概括(最小值、第一四分位数、中位数、第三四分位数、最大值)、均值、样本量(32)和标准差(6.07)。
- 箱线图:展示了MPG数据的分布范围、中位数和异常值。
- 直方图:以条形图形式展示了MPG的频率分布。
我们可以将分析变量更改为其他数值变量,例如车重(WT)。点击“更新图表”后,图表和摘要将相应更新。
使用分面功能比较组别
上一节我们查看了整体数据的分布,本节中我们来看看如何利用分类变量进行分组比较。
分面功能允许我们根据一个分类变量(如气缸数)将数据分成不同组,并分别绘制图表。
选择“气缸数”(Cylinders)作为分面变量,气缸数有4、6、8三种。点击“更新图表”后,我们将得到三组图表和数值摘要。
以下是观察结果:
- 箱线图显示,四缸汽车的MPG通常优于六缸汽车,而六缸汽车又优于八缸汽车。
- 直方图也清晰地展示了这一趋势。
我们还可以调整直方图的箱宽(bin size)。减少箱数会使每个条形更宽,从而改变数据分布的呈现粒度。每次调整后,都需要点击左下角的“更新图表”按钮。
分析其他变量与分面
我们也可以分析其他变量。例如,将分析变量改为“马力”(Horsepower),同时仍以“气缸数”进行分面。
点击“更新图表”后,我们能看到相反的趋势:马力越大,通常气缸数也越多。八缸汽车的马力最高,而四缸汽车的马力则相对较低。直方图同样在下方面板中展示了这一分布。
上传并分析自定义数据
这个应用的一个强大功能是支持上传用户自己的数据进行分析。
以下是上传和分析自定义数据的步骤:
- 点击“浏览”按钮。
- 在文件夹中找到目标数据集文件(例如著名的鸢尾花数据集
iris.csv)。 - 选择文件后,点击“上传用户数据”。
- 应用会读取数据,识别其中的分类变量和数值变量。
上传成功后,变量列表中会出现如“花萼长度”(sL length)、“花萼宽度”(sL width)、“花瓣长度”(pal length)、“花瓣宽度”(pal width)等变量。鸢尾花数据集包含三种相似但具有不同测量特征的鸢尾花。
首先,我们分析所有150朵花的“花萼长度”。更新图表后,可以看到整体的箱线图和直方图。
接着,我们使用分面功能,按花的“种类”(Species)进行分组。三种类分别为:山鸢尾(Setosa)、杂色鸢尾(Versicolor)、维吉尼亚鸢尾(Virginica)。
分组后可以发现,不同种类花的花萼长度差异显著。这正是我们区分花种类的依据之一。
我们还可以将分析变量改为“花瓣长度”(petal length)。结果显示,山鸢尾的花瓣长度非常短,而杂色鸢尾和维吉尼亚鸢尾的花瓣则长得多。
总结
本节课中,我们一起学习了如何使用交互式工具进行数据探索。
- 我们学会了如何生成和解读数据的数值摘要、箱线图和直方图。
- 我们掌握了分面功能,能够根据分类变量(如气缸数、花的种类)来比较不同子组的数据分布。
- 我们实践了上传自定义数据集(如鸢尾花数据集)并对其进行分析的全过程。

这个工具能帮助你快速感知数据的分布特征,是进行初步数据探索和可视化的有效手段。
18:多元分类数据关联分析 📊

在本节课中,我们将学习如何分析多元分类数据之间的关联。我们将探讨什么是多元分类数据,如何用表格和图形来展示它们,以及如何解读变量之间的关系。
什么是多元分类数据? 🤔
上一节我们介绍了课程主题,本节中我们来看看什么是多元分类数据。
想象一下,我们正在进行一项调查。我们可能会问受访者一个问题,例如:“你的性别是什么?” 请思考一下,性别属于哪种类型的变量。
性别是一个分类变量,因为回答属于不同的类别或组别。在这个例子中,我们有一个分类变量。但我们可能不只对性别感兴趣,还想知道“你的婚姻状况是什么?”
在这种情况下,我们测量了两个不同的变量,这被称为双变量。双变量就是两个变量。它也是多元的,多元指的是两个以上的变量。
我们可能不满足于只有这两个变量,还想了解更多信息。因此我们可能会问:“你的最高教育水平是什么?” 我们还可以问:“你的年龄组别是什么?”
在以上每个例子中,这些都是分类数据。一旦我们收集了这四个变量,我们就拥有了多元分类数据。
我们可以以电子表格或表单的形式来思考这些变量的回答。
我们可以记录一个人的所有回答。例如,我们交谈的第一位受访者是男性,拥有高中文凭或GED,未婚且从未结过婚,年龄在18至29岁之间。
我们可能不满足于只了解一个人的信息,因此可以继续收集第二位受访者的信息。这个人可能是女性,拥有一些大学学历或副学士学位,目前已婚或与伴侣同居,年龄在30至44岁之间。
我们可以为15个人重复这个过程,直到收集到大量信息。
数据整理与展示 📋
在这一点上,仅从这张图片很难全面了解我们的样本情况。很难把握样本的整体面貌,因此我们将探讨以更易于管理的形式展示所收集数据的不同方法。
收集完整样本后,我们可以选择以表格形式记录变量。
例如,我们可以查看获得的最高教育水平。从整个样本中,我们可以看出恰好有1,331人的学历低于高中。
此时,一眼就能更容易地了解整个样本的情况。
这引出了本视频剩余部分的研究问题:哪些因素会影响获得的最高教育水平?
如果我们想知道哪些因素影响最高教育水平,我们首先需要查看其他因素之一。
因此,我们将这个单变量分类数据表拆分为两个变量,形成一个双向表或列联表。在本例中,我们可以将每个类别按受访者是女性还是男性进行拆分。
没有额外背景信息,很难理解这个表格,因此我们将添加总计行和总计列,以便查看每个类别中有多少个体。
首先,思考一下表格内部所有这些值的含义。我们可以看到,有644位受访者是女性且学历低于高中。
我们需要一些额外的背景信息,因此了解总共有5,549位受访者会有所帮助。然后,将644除以5,549,我们可以计算出样本中女性且学历低于高中的比例。
这里我们可以看到是11.6%。我们可以对表格内部的每个条目重复此过程,以了解整个样本的情况。例如,我们可以看到,在整个样本中,近10%是女性且拥有高中文凭或GED。
让我们回到几页幻灯片前展示的原始表格。
这里我们进行了修改,添加了额外的百分比。这有助于我们更好地了解样本在四个类别中的分布情况。
数据的图形化展示 📈
看到这里的数值很好,但以图形方式查看它们也很有帮助。在本例中,这是一个关于最高教育水平获得的条形图,它显示了与上一张幻灯片表格相同的内容。
我们可以看到,最常见的类别是“一些大学或副学士学位”。这有助于我们快速、一目了然地了解情况,而数字有时会让人感到有些困惑。
回到我们最初的研究问题,我们感兴趣的是弄清楚其他因素如何影响获得的最高教育水平。因此,在本例中,我们将查看基于性别的教育水平的条件分布。
我们可以做的一件事是,根据受访者是女性还是男性,制作两个关于教育水平的条形图。
在这里,与男性相比,拥有一些大学或副学士学位的女性似乎更多,但很难准确比较这两个分布。
我们可以做的一件事是将每个分布转换为比例或百分比。这样,我们可以直接比较两种不同性别的分布,而不是比较可能无法直接比较的计数。
需要注意的是,在本例中,当我们创建比例时,我们将除以该类别中的个体总数。因此,对于女性,我们将除以2,814;对于男性,将除以2,735。这样,你可以看到我们两列各自加起来都是100%。
我们也可以使用并排条形图来展示这一点。在并排条形图中,你可以直接比较两个性别类别中,属于四个教育水平类别中每一个的个体比例。由此我们可以快速看出,确实,基于比例,拥有一些大学或副学士学位水平的女性多于男性,并且这是女性和男性教育水平之间最大的差异。
展示我们分布的另一种方式是查看堆叠条形图。堆叠条形图显示每个组中属于四个类别中每一个的个体比例。因为它们彼此相邻,我们也可以看到这两个组如何相互比较。
我们可以查看的另一种图形是马赛克图。在本例中,每个框的面积与该类别中的个体数量成比例。这是一目了然地查看数据的好方法,我们可以很好地了解数据的分布情况。
我将在其中画一条线,将拥有高中文凭的人和拥有一些大学学历的人分开。
我们可以清楚地看到,拥有一些大学学历的个体比例在18至29岁年龄组中最高,并且在此之后的每个年龄组中逐渐降低。如果这两个变量完全独立或没有关联,那么我们期望看到的是一个所有线条都是笔直的网格。我们可以看到,我在这里添加的线有很多起伏,在马赛克图中显得有些锯齿状。
查看马赛克图的另一种方式是在每个年龄类别中按性别分开。这样,我们可以查看三个变量(年龄、性别和教育)之间的关联。同样,当我们查看不同的年龄组时,可以看到类似的锯齿状。例如,在45至59岁这个类别中,男性和女性之间的差异相当相似。在高中和大学的分界处有一点起伏,但线条相对较直,表明性别在45至59岁年龄类别中作用不大。
当我们查看30至44岁时,可以看到这个起伏要强得多,表明性别在该年龄类别内有更大的关联。

总结 ✨
本节课中我们一起学习了:
- 什么是多元分类数据。
- 如何使用双向表或列联表来展示数据。
- 如何改变查看这些表格的方式,以包含边际分布或条件分布。
- 最后,我们探讨了以图形方式展示数据的方法,无论是条形图、并排条形图、堆叠条形图还是马赛克图。
19:多元定量数据关联分析 📊

在本节课中,我们将学习如何分析和可视化多元定量数据,特别是探索两个或多个定量变量之间的关联。我们将介绍散点图、关联的类型、方向和强度,以及皮尔逊相关系数等核心概念。
大家好,我是密歇根大学统计系的博士生 Tim Neamp。我对统计学产生兴趣,是因为它有能力帮助做出更好的医疗决策,实现个性化教育,并协助非营利组织和社区组织做出更明智的决策。
在本视频中,我将讨论如何分析多元定量数据之间的关联。
什么是多元定量数据?🔍
首先,多元定量数据从何而来?假设我们有一个研究对象。对于这个人,我们测量了他的年龄,同时也测量了他的身体质量指数、血压和胆固醇水平。由此产生的数据就是多元定量数据。
- 之所以是“多元”,是因为我们在每个个体或每个研究对象上测量了不止一个特征。
- 之所以是“定量”,是因为我们测量的数值是数字。
假设我们收集了这样的数据,可能来自15个人,或者像NHANES数据集那样来自成千上万的人。仅仅拥有这些数据本身,并不能帮助我们理解样本中存在的模式或样本中个体的特征。因此,我们可能需要将其可视化。
数据可视化方法 📈
一种可视化方法是使用单变量直方图。通过这些直方图,我们可以了解年龄的中位数和分布范围,也可以了解收缩压的中位数和分布范围。
但是,如果我们对这两个变量之间的关联感兴趣呢?例如,年龄较大的人血压是倾向于更高还是更低?目前,我们无法将年龄直方图中的某个人与收缩压直方图中的同一个人对应起来。
解决这个问题的方法是制作散点图。散点图将两个定量变量绘制在一起。这里,X轴代表年龄,Y轴代表收缩压。每个点代表一个人。例如,这个点代表一个大约26岁、收缩压约为180的人。
散点图的优势在于它能告诉我们这两个变量之间的关联:这两个变量是如何相关的?在这个散点图中,我们看到年龄较大的人倾向于有更高的血压。
关联的特征 🧩
我们主要关注关联的几个具体方面。
关联的类型
以下是三种不同类型的关联:
- 线性关联:点之间的模式形成一条直线。
- 二次关联:点之间的模式呈抛物线形,即先上升后下降。
- 无关联:随着年龄增长,高密度脂蛋白胆固醇既不增加也不减少。
关联的方向
关联的方向对应于关联直线的斜率。
- 正线性关联:当X增加时,Y也增加。例如,年龄增加,收缩压也增加。
- 负线性关联:当X增加时,Y减少。例如,车辆越重,每加仑行驶里程数越少。
关联的强度
除了类型和方向,我们还关心关联的强度。
- 弱线性关联:点沿着直线广泛分散。
- 中等线性关联:点的分散程度较小。
- 强线性关联:点的分散程度非常小,关联最强。
请注意,关联的强度不依赖于符号,你可以有很强的正关联和很强的负关联。
量化关联:皮尔逊相关系数 🔢
除了定性描述关联,还有一种方法可以量化线性关联的强度和符号,这被称为皮尔逊相关系数。
- 皮尔逊相关系数的符号就是关联的方向符号。
- 皮尔逊相关系数越接近1或-1,关联就越强。
在第一个例子中,我们看到一个弱的正线性关联,这意味着我们的相关系数为正,但不接近1。
在第二个例子中,随着关联变强,皮尔逊相关系数增加,但仍不接近1。
在第三个例子中,由于关联是负的,我们的皮尔逊相关系数现在也是负的,并且由于关联极强,它非常接近-1,值为-0.99。
在最后一个例子中,基本上没有关联,皮尔逊相关系数非常接近0,为-0.01。
公式:皮尔逊相关系数 r 的计算公式为:
r = Σ[(xi - x̄)(yi - ȳ)] / √[Σ(xi - x̄)² Σ(yi - ȳ)²]
其中 xi 和 yi 是数据点,x̄ 和 ȳ 是均值。
重要警示:相关不等于因果 ⚠️
我们所见的所有关联都有一个重要的警示:相关不等于因果。
这是什么意思呢?虽然在我们的例子中,我们看到随着年龄增长,收缩压也在增加,但这并不一定意味着年龄是收缩压增加的原因或导致因素。
这里有一个假设性的例子来说明为什么不是:也许红色方框内的所有人都恰好吸烟。那么,可能吸烟才是导致高血压的真正原因,而年龄实际上并没有导致高血压。只是在我们数据中,样本中年龄较大的人吸烟更多,使得年龄看起来像是原因。
仅仅因为两件事有关联,并不意味着其中一件事导致了另一件事。
识别异常值 🎯
除了探究关联,我们可能还会问:我们的数据集中是否有任何不寻常的个体?这些点被称为异常值。对于多元定量数据,一个潜在的异常值是指与数据其余部分的模式严重偏离的点。
例如,这里是我们数据中的模式。你可以看到,与其余点相比,其中一些点离该模式相当远。这些就是潜在的异常值。
结合分类变量 🌈
最后我想展示的是,除了拥有多元定量数据,你可能还会对一个分类变量感兴趣。例如,这里我们记录了血压和年龄,但我们也记录了性别。如果我想同时表示这三个变量,我可以根据分类变量为点着色。
从这张图中我们可以注意到几个有趣的现象:男性倾向于有更高的血压,尤其是在年轻时。而随着年龄增长,血压的升高在女性中更为显著(粉色点比黑色点平缓得多)。

总结 📝
本节课中,我们一起学习了如何处理多元定量数据。我们学会了如何使用散点图进行可视化,学会了用类型、方向和强度来描述关联,了解了皮尔逊相关系数是量化关联的一种数值方法,并且也学会了如何识别潜在的异常值。
20:交互式散点图演示 🎨📊

在本节课中,我们将学习如何使用一个交互式应用程序来可视化多元定量数据,并更好地理解变量之间的相关性。这个工具能帮助我们探索数据、上传自己的数据集,甚至根据指定的相关系数生成模拟数据。
概述
上一节我们讨论了多元定量数据的关联性。本节中,我们将通过一个具体的交互式工具,直观地探索散点图、直方图以及相关系数。
这个应用程序有三个主要功能:
- 查看默认数据集的散点图和直方图。
- 上传自己的CSV文件并进行分析。
- 根据指定的相关系数生成模拟数据。
功能一:查看默认数据集
首先,访问应用程序网站并确保位于“双变量绘图”标签页下。
应用程序的默认数据集展示了汽车重量与其每加仑英里数(油耗)之间的关系。
以下是操作步骤:
- 点击“使用默认数据集”按钮。
- 页面将显示油耗与车重的散点图,以及两个变量的直方图。
若要查看这两个变量之间的相关系数:
- 点击右上角的“相关性”选项。
- 结果显示,这两个变量的相关系数为 -0.87。
功能二:上传并分析自定义数据
接下来,我们看看如何上传自己的数据进行分析。
首先,需要准备一个CSV格式的数据文件。文件内容应包含变量名和数据行,例如,一个包含“年龄”和“收缩压”两列数据的文件。
以下是操作步骤:
- 点击“上传文件”按钮,选择准备好的CSV文件并打开。
- 点击“使用上传的数据集”按钮。
- 页面将显示年龄与收缩压的散点图和直方图。
这个可视化效果与课程视频中用于观察多元定量数据关联性的图表一致。
同样,可以点击“相关性”来查看这两个变量之间的相关系数,本例中为 0.58。
功能三:根据指定相关系数生成数据
最后,我们可以根据预设的相关系数来生成模拟数据。
操作步骤如下:
- 将默认数据集选项更改为“二元正态分布”。
- 点击“使用默认数据集”按钮。
- 此时会出现一个“相关系数”滑动条,初始值设置为0,生成的散点图显示两个不相关的变量。
假设我们想生成具有中等正相关的数据:
- 将滑动条拖动到目标值,例如 0.6。
- 再次点击“使用默认数据集”按钮。
- 现在,散点图将显示两个具有中等正线性关联的变量,并且显示的相关系数也为 0.6。
总结


本节课我们一起学习了如何使用交互式应用程序来探索数据。我们实践了三种方法:分析默认数据集以理解负相关关系,上传自定义CSV文件进行实际数据分析,以及通过调整相关系数滑动条来生成和观察不同关联强度的模拟数据。这个工具是理解和可视化多元定量数据之间关系的有效手段。
21:披萨分析任务导引 🍕

在本节课中,我们将介绍一项新的作业任务。这项任务将提供一个绝佳的机会,让我们将目前所学的概念付诸实践。
概述
本次练习的核心是写作与沟通。在现实世界中,向他人传达统计信息时,这项技能是不可或缺的。在本次作业中,你将扮演一家小型披萨公司的顾问角色,公司名称可以自拟。
公司CEO请求你协助规划数据的收集与汇总工作,这些数据将用于一项广告宣传活动,旨在突出公司的某个优势。这个优势可以是每片披萨的奶酪或配料更多、饼底口感更好,或是服务速度更快,具体由你决定。你需要撰写一份备忘录来描述你的研究计划。
任务核心:描述你的研究计划
我们希望你能用自己的语言描述你提议的研究。这包括描述你可能收集哪些数据、你想要测量哪些类型的变量,以及你将如何测量和记录它们。
你还应描述你汇总数据的计划,即哪些图表和数值摘要会是有用的。
请注意,你不需要虚构数据、进行任何正式的统计检验或生成实际的图表和数值摘要,因此也无需涉及详细公式。你的任务是沟通你的研究计划。作业本身会提供更具体的说明。
任务的最大价值:同行评审
这项作业的最大价值在于你提交备忘录之后。你将获得一次极佳的体验:评审几位同学的作业。
你将看到他们如何很好地(或不够好地)涵盖和连接某些想法。你很可能会产生一些“哦,这个想法真好,我真希望我也想到了”的时刻。
根据密歇根大学提供的其他在线课程经验,我们发现,通过这种形式获得深思熟虑反馈的学习者报告称,他们能够更准确地评估自己的工作、找到改进之处,并理解他人可能如何解读他们的工作。这多么棒啊!
因此,请提供你希望得到的那种评论,思考你希望获得什么样的反馈。提供既礼貌又专业、深思熟虑且有帮助的反馈非常重要,这是一项宝贵的生活技能。
总结
感谢你聆听本次概述。享受通过写作和同行评审进行的“披萨”学习体验吧。

现在,我自己突然也想吃披萨了。
22:明确总体与抽样方法 📊

在本节课中,我们将学习数据的来源,特别是如何通过从明确定义的总体中抽取样本来获取用于分析的数据。我们将重点介绍概率抽样与非概率抽样的核心区别及其重要性。
概述:数据从何而来?
在20世纪早中期之前,研究人员可用的工具非常有限。他们通常试图进行普查,即测量给定总体中的每一个单位。到了20世纪30年代,杰西·内曼博士在这一领域取得了重要突破,他的工作使其他研究人员能够使用随机抽样作为测量总体的技术。这意味着我们无需测量总体中的每一个单位,就能对总体做出推断。
当我们思考基于样本数据对总体进行推断时,一个非常重要的第一步是用具体的术语明确定义目标总体。
定义目标总体
为了对总体进行推断,我们必须首先明确我们想要谈论的对象。这包括以下几个关键方面:
- 谁:我们测量的是谁?是男性、非裔美国男性,还是年长的非裔美国男性?“年长”具体指什么?在思考你真正希望推断的总体时,这些初始阶段必须非常具体。
- 什么与何地:我们感兴趣的是什么时间范围?是2018年、2018年4月,还是2018年4月上半月?其次,总体位于何处?我们必须考虑地理因素,是美国中西部、密歇根州、密歇根州的某个县(如沃什特瑙县),还是安娜堡市?
在开始对总体进行推断之前,我们需要明确这些具体细节,必须清楚我们谈论的是谁、什么时间以及何地。
一个重要建议是:将总体定义写在纸上。 写下定义——谁、什么时间、何地。如果你与团队合作,确保每个人都有一份该总体声明的确切副本。目标总体应以每个人都能理解的方式明确定义,在分析数据集时,每个人都应对你想要谈论的总体有共同的理解。
获取数据的三种方法
假设你已经为目标总体写下了具体定义,接下来该怎么办?我们有一个明确定义的目标总体,但最终如何对该总体做出推断性陈述?
以下是三种不同的方法:
- 进行普查:即尝试测量那个具体定义的总体中的每一个人。可以想象,这是一项相当昂贵的任务,但它仍然是我们的选项之一。
- 从总体中选取一个科学的概率样本,并尝试测量样本中的所有单位。本周我们将仔细定义“科学的概率样本”的含义。
- 从总体中选取一个非概率样本,并再次尝试测量样本中的所有单位。
方法一:进行总体普查
当我们谈论较小的目标总体、定义非常明确、地理范围较小,以至于尝试接触和测量总体中的每个人并不困难时,进行普查往往容易得多。对于较大的总体,普查可能极其昂贵。例如在美国,每十年进行一次人口普查,这是一项大规模的努力,试图测量美国的每一个人并收集他们的选定变量,这是一项极其昂贵的操作。
普查还需要仔细评估测量所有总体单位的成本,以及哪些行政数据源已经可用。也就是说,我们真的需要测量每个人吗?还是可以从其他现有来源获取一些信息?
方法二:概率抽样
上一节我们介绍了进行普查的方法,本节中我们来看看概率抽样。我们将在本周晚些时候提供更多细节,但首先了解一些概率抽样的基础知识。
以下是概率抽样的基本步骤:
- 构建总体所有单位的列表:这有时被称为抽样框。这是我们最终将尝试测量的样本的来源列表。
- 确定列表中每个单位的入选概率:在概率抽样中,列表上的每个单位(无论是个人、家庭、企业还是机构)都有一个已知且非零的被选入样本的概率。这就是我们所说的概率抽样。
- 根据入选概率随机选择单位:不同亚组的抽样率由这些入选概率决定,因此某些亚组可能比其他亚组有更高的入选概率。
- 尝试测量那些随机选择的单位:这就是我们从样本中获取数据的地方,我们可能会问他们问题、采访他们,或者从其他来源收集关于这些随机选择单位的数据。
方法三:非概率抽样
非概率抽样通常不涉及根据入选概率随机选择个体。这是从样本收集数据的各种技术中的一个关键缺点。与概率抽样不同,我们不是随机选择进入样本的单位。
此外,无法确定总体单位的入选概率。这使得在分析数据时,更难做出具有代表性的推断性陈述。了解这些入选概率非常重要,而顾名思义,在非概率抽样中,我们事先并不知道这些概率。
以下是一些非概率抽样的常见例子:
- 自愿网络调查:你可能在网上看到过加入“自愿网络调查”的邀请。在这些调查中,你只是试图让任何对参与该网络调查感兴趣的人参加,而不是从某个明确定义的列表或抽样框中随机选择人。
- 配额抽样:即你尝试招募尽可能多的符合特定亚组定义的人(例如,年长的非裔美国男性),直到达到某些目标数量。在某些配额抽样案例中,研究人员试图根据任何概率方案,而是基于任何可用的人,只要他们达到目标或配额。
- 滚雪球抽样:顾名思义,就像雪球滚下山坡会越滚越大一样。你招募某人参与研究,然后他们可能会告诉朋友,朋友再告诉朋友,你的样本最终通过这种链条收集个体而变大。在这种情况下,朋友招募朋友,我们无法控制他们招募谁或招募这些其他人的概率。
- 便利抽样:这是另一种收集非概率样本的方式。例如,你可能上街与任何可用的人交谈以收集数据和提问;如果你在大学或商业环境中教学,你可能只是从你的课程中的个人、你的同事或任何离你近的人那里收集数据。同样,没有涉及入选概率,你只是试图从方便且离你近的个人那里收集数据。
在这些情况下,我们都无法将入选概率应用于这些个体,这阻碍了我们关于更大总体做出具有代表性的陈述。
非概率抽样的主要问题
总结来说,非概率抽样的主要问题在于:
- 没有对目标总体进行推断的统计基础。
- 存在非常高的偏差风险。例如,如果你决定在城镇的某个特定区域进行街头调查,而只有特定类型的人经常光顾该区域的场所,那么你将只从一个非常具体的子集收集数据,而不是整个更大总体的随机代表性样本。我们刚刚介绍的所有其他类型的非概率抽样也是如此,存在很高的偏差风险,因为你招募的是非常特定类型的人并测量这些人,而没有获得更大目标总体的完整代表性样本。
为什么选择概率抽样?
到目前为止,我试图论证概率抽样具有一些重要特性。在概率抽样中,总体中所有单位的已知入选概率,正是这一点使我们能够对总体特征(即我们分析数据时试图估计的东西)以及调查估计值的不确定性做出无偏的陈述。
除了说明平均收入是多少或总体中具有某种特征的人的比例是多少之外,我们还希望说明我们对这些估计值的不确定程度。因为我们没有测量总体中的每个人,我们测量的是一个样本,我们希望陈述我们对作为总体特征估计值的计算估计值的不确定程度。
概率抽样中从预定义的抽样框或列表中随机选择总体单位,这保护我们免受样本选择机制可能带来的偏差影响。概率抽样允许我们基于所谓的抽样分布进行总体推断。
抽样分布的核心概念
本周我们将花大量时间讨论抽样分布的含义。简而言之,如果我们考虑重复多次抽取样本的过程,并为每一个我们可能假设选择的样本计算估计值,那么一个估计值的分布将会出现。当我们思考对总体做出陈述时,我们希望基于这个所有可能估计值的分布来做出陈述。
在现实中,我们只会抽取一个样本并基于该样本计算估计值。但从统计上讲,我们所有的推断都将基于那些假设的抽样分布——如果我们根据指定的设计一遍又一遍地重复抽样过程,我们会期望看到什么?这将告诉我们对自己所做的总体陈述有多确定。
核心结论
核心思想是:通过遵循良好的科学抽样原则进行非常仔细的样本设计,概率样本能够从更大的总体中产生具有代表性的、现实的随机样本。这些类型的样本具有非常重要的统计特性。
抽样通常用于从人和总体中收集数据,但我们必须投入足够的时间来设计这些样本,提出明确定义的目标总体,并非常小心地选择这些样本,以便我们能够遵循内曼博士奠定的这些统计特性做出重要的陈述。因此,概率抽样是一个我们将持续关注的重要概念。
总结与展望
本节课中,我们一起学习了数据的来源以及获取数据的三种主要方法:普查、概率抽样和非概率抽样。我们明确了明确定义目标总体的重要性,并深入探讨了概率抽样的基本原理及其相对于非概率抽样的优势,特别是其允许进行统计推断和量化不确定性的能力。

接下来,我们将更详细地讨论概率抽样技术及其示例,同时也会进一步探讨非概率抽样的潜在缺陷。我们还将深入探讨抽样分布的概念,理解这一概念对于基于不同类型样本的数据分析做出具有代表性的总体推断至关重要。
23:概率抽样方法(上)📊

在本节课中,我们将更详细地探讨概率抽样,并了解几种不同类型的概率样本。我们将深入探讨这种技术,并再次说明为什么概率样本对于得出关于总体的代表性结论至关重要。
上一讲我们介绍了抽样的基本概念,本节中我们来看看具体的概率抽样方法。
简单随机抽样(SRS)🎲
简单随机抽样是最基础的概率抽样方法。我们将它缩写为SRS,并会将其与本课程前面讨论过的独立同分布数据概念联系起来。
简单随机抽样的定义
进行简单随机抽样时,我们从一个已知的列表或抽样框开始。回忆上一讲的内容,总体有 N 个单位。N 代表总体的大小,单位可以是个人、家庭、企业等。我们拥有所有 N 个单位的列表,然后从中随机选择 n 个单位。n 是我们的样本量。
遵循这种抽样设计,列表中的每一个单位都有相同的被选概率。每个单位被选中的概率定义为 n / N。这是我们遇到的第一个抽样分数的例子,它代表最终被选入样本的总体比例。在简单随机抽样中,总体中每个人被纳入样本的概率是相同的,都是 n / N。
这也意味着,所有大小为 n 的可能样本被抽中的可能性是相等的。当我们使用简单随机抽样时,每一个可能被抽出的、大小为 n 的样本,其被选中的可能性都相同。
此外,基于从简单随机样本中收集的数据,对均值、比例、总数和其他感兴趣统计量的估计是无偏的。我们上一讲简单讨论了偏差。作为一种概率抽样,当我们基于简单随机样本计算估计值时,这些估计值是无偏的。这意味着,这些估计值平均而言等于我们感兴趣的总体真实值。回忆我们介绍的抽样分布概念,这些估计值可能存在变异性,具体取决于我们选择了哪些样本。但平均而言,在所有那些假设的样本中,这些估计值将等于感兴趣的总体值。这就是“无偏”的含义。
以下是简单随机抽样的一个图示:假设从一份包含10,000人的列表中随机抽取134人。这张体育场视图展示了随机抽样的结果,你可以看到所有的黑点代表了被随机选中的个体。可以看到,这个大小为134的随机样本代表了体育场的所有不同区域,我们从所有不同区域都抽取了一些样本。在这个小例子中,这134人是完全随机地从10,000人的更大列表中选出的。因此,通过收集这134名使用此技术随机选中的人的数据,我们可以对体育场内更大的总体做出有代表性的陈述。
放回与不放回抽样
简单随机抽样可以是放回的或不放回的。
- 放回抽样意味着当我们从大列表中选中某人后,会将其放回列表中,使其有机会再次被选中。
- 更常见的是进行不放回的简单随机抽样。一旦一个单位从给定列表中被抽样,就不能再次被抽样。
但对于这两种不同类型的简单随机抽样,每个单位被选中的概率仍然是相同的量,即 n / N。无论我们进行的是允许个人被多次选中的放回抽样,还是不放回抽样,被选中的概率保持不变,每个人都有 n / N 的机会被纳入样本。
简单随机抽样的实践限制
虽然简单随机抽样在概念上似乎很简单,但在实践中很少使用。原因如下:从一个非常大的总体中收集 n 个随机抽样单位的数据,成本可能高得令人望而却步。
例如,考虑一个从全美国范围内抽取1000人的简单随机样本,并且假设我们必须开车到每个被选中的家庭进行访谈。仅仅为了开车前往这些随机选中的家庭,成本就会变得极其高昂。因此,在实践中我们会考虑其他类型的概率样本,这些样本的实施成本要低得多。这对于大规模总体尤其如此。简单随机抽样通常在总体较小、数据收集更容易且成本更低时使用。
与IID数据的联系
现在,我们来谈谈它与本课程前面讨论过的IID数据概念的联系。回忆一下,IID观测值是独立同分布的。
理论上,简单随机抽样将为给定变量生成IID数据。当我们选择一个简单随机样本,然后收集该样本中所有单位的测量值时,理论上将产生之前定义的IID数据。
所有随机抽样的单位都将产生独立的观测值。随机抽样的单位之间没有联系,它们是彼此独立选择的,或者说它们感兴趣的测量值彼此不相关。此外,这些单位是同分布的,因此它们代表了某个更大总体的值分布。理论上,我们从简单随机样本中试图收集的所有测量值,都来自描述更大总体值分布的同一个分布。因此,我们得到了一组具有代表性的、随机选择的、彼此独立的观测单位。就抽样过程而言,这就是IID数据。
一个具体示例 📧
为了让概念更具体,这里有一个简单随机抽样的例子。
假设我们有一个客户服务数据库,包含 N = 2500 封在2018年收到的电子邮件请求。客户服务部门的主管希望估计平均电子邮件响应时间,即该部门回复这2500封邮件各花了多长时间。
你可能会觉得这很简单,直接查看所有2500封邮件就行了。但不幸的是,在这种情况下,精确计算需要手动审查每封邮件线程,并追踪回复邮件的具体时间点。因此,测量全部2500封邮件并不那么简单直接。主管要求分析团队抽样、处理并分析一个小样本,设 n = 100 封邮件,而不是试图测量每一封邮件。
我们可以通过几种不同的方法来获取这类样本。
一种简单但欠考虑的方法是直接处理列表上的前100封邮件。我们有一个2500封邮件的列表,就取前100封。在这种情况下,估计的平均响应时间可能是有偏的。例如,如果客户服务代表随着时间推移学会了更快地回复,那么邮件回复开始时可能花费的时间更长,而我们的估计均值在这种情况下可能会偏大。此外,前100个观测值也可能来自一小部分员工,即最初回复的邮件可能来自特定的个人。换句话说,这些邮件回复并不完全具有代表性,它们彼此之间并不独立(因为可能由相同的员工回复),并且它们也不是同分布的(因为它们来自与整个部门所有人不同的响应时间分布)。遵循这种方法没有按照特定概率进行随机选择,本质上我们得到的是一个非概率样本,这带来了重要的局限性。
使用简单随机抽样的更好方法是将这些邮件从1到2500编号,然后使用随机数生成器随机选择100个数字(即邮件的ID)。
在这种情况下,每封邮件都有一个已知的被选概率,即样本量100除以总体大小2500。遵循这种简单随机抽样方法,每封邮件都有这个已知的被选入样本的概率。此外,这将产生一个随机的、有代表性的100封邮件样本。理论上,这是从所有可能被回复的邮件中进行的随机选择。
在这种情况下,估计的平均响应时间也将是总体均值的无偏估计。正如我们讨论简单随机抽样时所说,平均而言,如果我们抽取许多许多个大小为100的样本并计算每个样本的均值,这些均值的平均值将等于真实的总体值。这是概率抽样的一个非常好的特性。

总结
本节课中,我们一起学习了概率抽样的核心方法之一——简单随机抽样。我们明确了其定义,即每个单位具有相同且已知的入选概率(n / N)。我们探讨了其能产生无偏估计和理论上IID数据的优良特性。同时,我们也认识到其在面对大规模总体时成本高昂的实践限制,这引出了对更复杂抽样方法的需求。最后,通过一个客户服务响应时间的例子,我们对比了非概率抽样与简单随机抽样的差异,直观地理解了后者的优势。下一节,我们将继续探讨为应对大规模抽样而设计的复杂抽样方法。
24:概率抽样方法(下)📊

在本节课中,我们将继续学习概率抽样方法。上一节我们介绍了简单随机抽样及其优良特性。本节中,我们将探讨更复杂的概率抽样设计,了解它们如何在实际调查中节省成本并提高效率。
复杂概率样本概述
简单随机抽样在实践中很少使用,因为它对于大规模总体而言成本高昂。复杂概率样本则通过特定的设计特征来节约成本并提高样本效率。与简单随机抽样不同,复杂样本的设计偏离了简单随机抽样的基本原则。
复杂样本的关键特征 🧩
复杂样本相对于简单随机抽样,具有几个关键的设计特征。
以下是复杂样本的主要设计方法:
-
分层
首先,总体被划分为不同的层,并将部分样本分配到每个层中。这确保了每个层都有样本代表,并减少了调查估计的方差。这种技术称为分层。回想上一讲中的体育场视图,分层可以确保我们的样本来自体育场的所有四个象限,而不仅仅是其中一个。 -
整群抽样
其次,复杂样本通过整群抽样来定义。在整群抽样中,我们可能首先随机选择总体单位的群,例如美国的县。每个群在各层内都有已知的选中概率。这在我们实际随机选择个人或家庭之前,首先抽样群,从而节省大量数据收集成本。 -
多阶段抽样
然后,我们会在这些随机选中的群内,根据某种选中概率,随机抽样单位。例如,到达一个美国县后,我们可能会获取该县内的地址列表,并从所有可能的地址中随机选择家庭。地址列表上的每个地址都有已知的选中概率。关键区别在于,这些单位来自初始随机选择的群内的第二阶段抽样。这就是复杂抽样的核心思想。
单位选中概率的计算 🧮
在这些复杂样本中,一个单位的选中概率由几个因素决定。
一个单位的选中概率取决于从给定层中抽样的群数量、每个层中总体的群总数、最终从每个随机选择的群内抽样的单位数量,以及每个不同群中总体的单位总数。
以下是一个如何计算复杂样本中单位选中概率的例子:
假设我们在一个给定的层内,从 A 个群中随机选择 a 个群。然后,在每个选中的 a 个群内,我们从 B 个可能的单位中随机选择 b 个单位。那么,该群内每个单位的选中概率可以写为:
P(selection) = (a / A) * (b / B)
第一个分数 (a / A) 是群被随机选中的概率。第二个分数 (b / B) 是第二阶段抽样比例。样本设计者根据设计约束和成本限制来确定 a 和 b 的大小。
实例:国家健康与营养调查 🚚
为了让概念更具体,我们以国家健康与营养调查为例。
首先,我们根据地理和人口密度将美国划分为不同的区域。这些基于地理和人口密度对美国进行的划分称为层。通过将样本分配到这些不同的层,我们确保了每个层都有代表性,并最小化了“坏”的简单随机样本的风险。
接下来,我们从每个层中分配一定数量的县或县组进行抽样。这些就是群。我们随机抽样群以节省成本,这样我们就可以在一个非常小的地理区域(如一个县)内抽样家庭,而不是驱车前往从更大地理区域随机抽样的家庭。
然后,我们在这些县内以更高的比率抽样某些社会人口亚组的个体。这被称为过抽样。过抽样意味着不同类型的人将有不同的选中概率,在第二阶段有不同的选中率。这没关系,我们仍然有一个概率设计,并且可以使用这些概率最终对更大的总体做出有代表性的陈述。
这种多阶段抽样过程如下图所示(源自NHANES文档):
- 第一阶段:将美国划分为不同区域,并从每个区域中随机选择县(紫色点)。
- 第二阶段:在选中的县内,随机选择更小的区域段(黄色区域)。
- 第三阶段:在选中的区域段内,列出所有家庭并随机选择家庭。
- 第四阶段:在选中的家庭内,随机选择个体。
在所有这四个阶段,我们都知道选中概率是什么,并在整个设计中保持这些概率。我们总是知道此处每个阶段不同单位的概率,这是概率抽样设计的重要特征。
在NHANES中,他们驾驶一辆载有医疗设备和工作人员的大型半挂车前往每个抽样的县和区域段。然后,他们邀请从这些家庭中随机选出的个体来到半挂车进行访谈和体检,数据便由此产生。
抽样权重与估计 ⚖️
在这种设计中,一个人选中概率的倒数被称为其抽样权重。
例如,如果根据复杂的多阶段设计,我的最终选中概率是 1/100,那么我的抽样权重就是 100。换句话说,在更大的总体中,我代表我自己和其他99个人。
这个作为选中概率函数的抽样权重,在实际数据分析中用于计算有代表性的总体估计值。因此,选中概率在基于复杂样本的计算估计中起着直接作用。
一旦我们从随机选择的个体那里收集到数据,这些权重就被用来计算感兴趣的总体数量的无偏估计,例如平均身体质量指数。如果根据样本设计对某些群体进行了过抽样,这些权重会直接考虑这些不同的选中概率。
概率抽样的重要性重申 ✅
最后,我们再次强调概率抽样的几个关键概念。
总体中的每个个体都有一个已知的非零选中概率。随后根据这些概率进行的随机抽样确保了总体中的所有单位都有预定义的机会被选中。一旦我们知道了这些选中概率,我们就可以为每个总体单位写下它们。
我们可以使用这些选中概率,通过抽样权重计算无偏估计。我们还可以估计抽样分布的特征——即使我们只抽取了一个样本,也可以模拟如果重复进行复杂抽样,其分布会是什么样子。这就是概率抽样的部分魅力所在:我们不需要一遍又一遍地抽样来了解估计量的分布可能是什么样子。
概率抽样为对更大总体中的某些数量进行推断提供了统计基础,这是一个非常重要的点。
总结

本节课中,我们一起学习了复杂概率抽样方法。我们了解了分层、整群和多阶段抽样如何帮助节省调查成本并确保代表性。我们学习了如何计算复杂设计下的单位选中概率,并通过国家健康与营养调查的实例看到了多阶段抽样的实际应用。最后,我们明确了抽样权重的作用及其在计算无偏总体估计中的重要性。概率抽样为基于样本数据对总体进行统计推断提供了坚实的理论基础。下一节,我们将探讨非概率抽样及其面临的挑战。
25:非概率抽样方法(上)📊

在本节课中,我们将学习什么是非概率抽样,了解其常见类型,并探讨使用此类数据时面临的挑战与可能的解决方法。
概述
上一节我们讨论了概率抽样,即每个个体都有已知的非零概率被选入样本。本节中,我们将注意力转向另一种抽样方法——非概率抽样。我们将首先定义非概率抽样及其关键特征,然后列举常见的例子,最后介绍两种用于从非概率样本进行总体推断的方法。
什么是非概率抽样?
与概率抽样不同,非概率抽样具有以下重要特征:
- 无法确定选择概率:我们无法为样本中的个体或单位计算其被选入样本的概率。
- 没有随机选择机制:我们无法控制最终产生样本的随机选择过程。
- 成本相对低廉:非概率抽样的数据收集成本通常远低于概率抽样,这是一个显著优势。
常见的非概率抽样例子
以下是几种常见的非概率抽样类型:
- 志愿者研究:常见于临床试验或学术机构的小型研究。研究人员发布招募信息,由感兴趣的人主动报名参加。研究者无法控制谁会被选中,也没有抽样框。
- 网络自愿参与(拦截)调查:当你在网站上看到调查邀请并决定参与时,就构成了这种样本。同样,没有选择概率和随机选择,数据收集者只是在寻找自愿参与者。
- 滚雪球抽样:样本通过参与者推荐他人而逐渐扩大。例如,一个参与者告诉朋友,朋友再告诉其他朋友。样本像滚雪球一样增长,但整个过程没有概率控制,全靠口碑传播。
- 便利样本:研究者出于便利性选择容易接触的群体作为样本。例如,大学教授为了进行研究,从其所教的《心理学101》大班中招募学生。这并非随机选择,只是为了方便获取大量参与者。
- 配额抽样:研究者设定样本子群的目标数量(配额),并尽一切努力招募足够人数以达到这些目标。例如,目标是招募1000名男性和1000名女性。达到配额是首要任务,但过程中同样没有随机选择或已知的选择概率。
这五种例子的共同点是:都没有已知的选择概率,研究者只是通过各种可能的方式收集数据和获取样本。
非概率抽样的核心问题
非概率抽样的一个共同且关键的特征是:在选择概率无法事先确定。这是概率抽样与非概率抽样的根本区别。
那么,为什么“是否有已知的选择概率”如此重要?
在非概率抽样中,由于我们无法控制选择概率,也不知道个体被纳入样本的随机概率,并且没有使用随机选择,因此缺乏对样本来源的更大总体进行统计推断的数学基础。
反之,如果我们知道选择概率(以及适用的总体分层和随机抽样的集群),我们就能估计抽样分布的特征。抽样分布是指,如果使用相同的概率抽样设计(已知选择概率并按此随机选择个体)抽取许多随机样本,所得到的估计值的分布。能够估计抽样分布的特征,对于对更大总体进行推断至关重要。
非概率样本的核心问题在于:
- 样本单位不是随机选择的,这导致存在很高的抽样偏差风险。例如,一个网站上的自愿参与调查,可能只吸引对该网站感兴趣的人,这远不能代表你感兴趣的所有人。
- 样本通常不能代表更大的目标总体。当我们想对总体做出陈述时,我们希望样本具有代表性。但志愿者样本或滚雪球样本等,通常无法提供来自总体的完全代表性样本,这使得做出无偏的总体陈述变得困难。
如今,我们常在媒体上听到关于大数据和分析的讨论。例如,处理数百万条推特数据的研究。许多大数据的问题在于,它们源于非概率样本,没有产生这些数据的概率抽样机制。这些数据通常出于便利性而产生,但人们却用它们来对更大总体做出陈述。因此,作为研究者,在分析所谓的大数据时必须非常谨慎,并充分理解数据的来源。
我们能做什么?两种推断方法
如果只能获得非概率样本,是否就无能为力了?并非如此。非概率样本成本低廉,是研究者的热门选择。那么,面对这类数据,我们能做什么呢?
许多数据集都来自非概率样本。根据这些数据,我们能否对更大的总体做出一些推断?答案是肯定的。2017年,Mike Elliott和Rick Valliant在《统计科学》期刊上发表了一篇技术性很强的文章,深入探讨了处理非概率样本时可用的不同估计方法。
以下是两种可能采用的方法:
- 伪随机化方法:通过一些处理,我们将非概率样本视为概率样本来对待。我们将在下一部分讨论具体做法。
- 校准方法:通过加权和其他基于模型的调整,使你的非概率样本在特征上更接近你感兴趣的总体。我们同样会在下一部分简要介绍如何在实践中实施这种方法。

总结
本节课我们一起学习了非概率抽样的定义与特征,了解了志愿者研究、网络调查、滚雪球抽样、便利样本和配额抽样等常见类型。我们认识到,非概率抽样的核心问题在于缺乏已知的选择概率和随机机制,这导致样本可能存在偏差且代表性不足,从而为统计推断带来挑战。然而,这并非绝境,通过伪随机化或校准等统计方法,我们仍然可以尝试从非概率样本中对总体进行有意义的推断。在下一节课中,我们将进一步探讨这些推断方法的具体应用。
26:非概率抽样方法(下)📊

在本节课中,我们将继续探讨非概率抽样。我们将学习几种方法,用于在仅拥有非概率抽样数据时,对总体进行推断。这些方法旨在弥补非概率抽样缺乏已知选择概率的缺陷。
上一节我们介绍了非概率抽样的基本概念及其局限性,本节中我们来看看如何利用这些数据进行统计推断。
伪随机化方法
伪随机化方法的核心思想是,将非概率样本的数据与另一个概率样本的数据相结合。
以下是具体步骤:
- 寻找共同测量指标:首先,需要找到非概率样本和概率样本数据集中共同测量的变量。
- 合并数据集:将这两个数据集纵向堆叠在一起,形成一个组合数据集。
- 估计入选概率:利用两个样本中都存在的辅助信息(如性别、年龄、教育程度等),估计每个个体被纳入非概率样本的概率。这通常通过逻辑回归模型完成。
- 在组合数据集中,为每个个体创建一个指示变量
A:若个体来自非概率样本,则A=1;若来自概率样本,则A=0。 - 使用逻辑回归模型:
logit(P(A=1)) = β0 + β1*X1 + β2*X2 + ...,其中X1, X2, ...是辅助变量(如年龄、性别)。
- 在组合数据集中,为每个个体创建一个指示变量
- 应用概率抽样方法:将上一步为非概率样本个体估计出的入选概率视为已知,然后应用之前讨论过的概率抽样分析方法(如加权)对组合数据集进行分析。
这种方法试图通过引入概率样本的结构信息,来“校正”非概率样本的选择偏差。
校准加权法
校准加权法通过为非概率样本中的每个回答单元计算权重,使加权后的样本在关键特征分布上接近已知的总体分布。
以下是其工作原理:
- 识别分布差异:比较非概率样本与目标总体在某个或某些已知特征(如性别比例)上的分布。
- 例如,非概率样本中女性占70%,男性占30%。
- 而目标总体中,女性占50%,男性占50%。
- 计算调整权重:计算权重,对样本中比例过高的群体(此例中的女性)赋予较低的权重,对比例过低的群体(此例中的男性)赋予较高的权重。
- 目标:使加权后的样本性别比例调整为50:50,以匹配总体。
- 应用权重进行分析:在后续计算估计值(如均值、比例)时,使用这些权重。
这种方法的关键在于,用于构建权重的特征(如性别)必须与研究者关心的核心变量高度相关。如果权重变量与兴趣变量无关,则无法有效减少由非概率抽样引起的偏差。
案例分析:推特数据推断
让我们通过分析推特数据的例子,来具体理解非概率抽样的挑战。
假设我们通过API抓取了数十万条提及特朗普总统的推文。这是一个大数据集,但本质上是一个方便样本:
- 无法确定选择概率:我们没有所有可能推文的抽样框,也未随机选择推文,只是抓取了所有可用的相关推文。
- 推特用户不代表总体:推特用户是自我选择的群体,通常对表达观点有较强兴趣,他们不能代表更广泛的人口总体。
接着,我们雇佣编码团队或使用算法,为每条推文标注一个二元指标:是否表达了对特朗普总统的支持。
面临的推断问题:
尽管我们拥有海量数据和精良的标注算法,但由于数据来源于非概率抽样,存在很高的抽样偏差风险。样本可能仅代表了那些有强烈意愿在推特上表达政治观点的人,而忽略了沉默的大多数。因此,直接根据此样本计算出的“支持率”可能严重偏离总体真实情况。
此时,前述的伪随机化方法或校准加权法就可能被应用。例如,我们可以尝试找到另一个具有全国代表性的概率抽样调查(其中也包含对特朗普的支持度问题及人口学变量),然后将两个数据集结合,使用伪随机化方法进行推断。
后续内容预告
在介绍了概率抽样、非概率抽样以及基于非概率样本的推断方法后,我们接下来将深入探讨两个核心概念:
- 抽样分布与抽样方差:我们将详细讨论,如何仅凭一个概率样本,就能估计统计量(如样本均值)的分布特征及其变异程度。这是概率抽样一个非常强大的特性。
- 基于模型的推断方法:我们将引入另一种统计分析范式——基于模型的推断。这种方法在一定程度上可以忽略具体的抽样机制。例如,前面提到的用逻辑回归估计非概率样本入选概率,就是一种模型辅助方法。随着课程深入,我们将更多地探讨回归模型等工具,用于分析来自各种抽样设计的数据。
理解数据来源及其背后的抽样机制,对于选择正确的分析方法和合理解读结果至关重要。

本节课总结:我们一起学习了两种处理非概率抽样数据以进行总体推断的方法:伪随机化方法(通过结合概率样本来估计入选概率)和校准加权法(通过调整权重使样本与总体在关键特征上一致)。我们还通过推特数据的案例,具体分析了非概率抽样在实际研究中的挑战与局限。最后,我们预告了接下来关于抽样分布和基于模型推断的重要主题。
27:抽样方差与抽样分布(上) 📊

在本节课中,我们将深入探讨概率抽样的核心概念,特别是抽样分布和抽样方差。我们将学习这些工具为何对于基于概率样本进行总体推断至关重要。
什么是抽样分布? 🤔
上一节我们介绍了概率抽样的基本思想。本节中,我们来看看抽样分布的具体含义。
回忆本课程早期,我们讨论过感兴趣变量的值分布。例如,我们简要介绍了正态分布。如果我们绘制一个变量所有可能值的直方图或密度函数,就能了解该变量值的分布情况。许多我们感兴趣的变量都可能遵循正态分布或钟形曲线。
然而,当我们选择概率样本来对更大的总体进行推断时,我们的推断是基于抽样分布的。这一点非常重要,必须将抽样分布与感兴趣变量的值分布区分开来。
抽样分布是调查估计值的分布,而不是变量值的分布。它描述的是:如果我们使用相同的概率抽样设计,反复抽取许多随机样本,并从每个样本中计算出一个估计值(例如均值或比例),那么所有这些估计值所形成的分布,就是抽样分布。
以下是抽样分布的一些关键特性:
- 假设性:抽样分布描述的是如果我们能抽取成千上万个概率样本时会看到的情况。这是一个假设性的思想实验,我们实际上不会这么做,但理论描述了这种分布的特征。
- 外观不同:抽样分布的外观通常与单个变量的值分布非常不同。
- 趋于正态:当概率样本的样本量足够大时,无论我们计算何种估计值,其抽样分布都会趋近于正态分布。这得益于中心极限定理,它指出随着样本量增大,估计值的分布会越来越趋向正态。
什么是抽样方差? 📈
理解了抽样分布后,我们现在需要探讨抽样方差的概念。
抽样方差是由抽样分布描述的估计值的变异性。假设我们抽取了成千上万个使用相同设计的概率样本,并绘制了每个样本的估计值,那么描述这个抽样分布变异性的指标就是抽样方差。它衡量了在这些假设的重复样本中,我们试图计算的估计值有多大的波动。
因为我们只抽取一个样本,而不是测量总体中的每一个体,所以基于单个样本的调查估计值不会完全等于我们感兴趣的总体真值。这就是所谓的抽样误差。
在所有这些假设的重复样本中,抽样误差会随机变化:一个子样本的均值可能略低于总体均值,另一个可能略高,再一个可能非常接近。这些估计值会在假设的重复样本中“跳动”。
这些抽样误差的变异性,就描述了抽样分布的方差。如果我们观察整个样本估计值的分布,看它们围绕我们试图估计的总体真值“跳动”的程度,那就是抽样分布的方差,也就是我们所说的抽样方差。
为什么抽样方差对总体推断至关重要? 🎯
上一节我们定义了抽样方差,本节中我们来看看它为何如此重要。
如果每个样本估计值都等于感兴趣的总体真值(例如,在人口普查中,我们试图测量每个人),那么就不会有抽样误差,也不会有抽样方差。但正如我们之前讨论的,普查在实践中通常非常困难且昂贵,因此我们转而使用抽样。
样本量是影响抽样方差的关键因素:
- 更大的概率样本量意味着更小的抽样误差和更小的抽样方差。这可以类比普查:样本量越大,我们就越接近测量总体中的每个人,误差就越小,估计值也越稳定。
- 因此,更大的样本意味着更小的抽样方差,我们得到的估计值更精确,对所做的推断性陈述也更有信心。
- 然而,获取更大的样本(尤其是在使用概率抽样时)成本更高。因此,在抽样中,经常需要在成本和抽样方差之间进行权衡。
抽样分布的“宽度”(即所有假设估计值的离散程度)会随着样本量的增大而变小,这意味着我们的估计值变异性更小,抽样方差更低。
模拟抽样分布示例 📊

以下是模拟抽样分布的一个图示,它展示了一个3x3的矩阵:
- 行(从上到下):表示不同的样本量(500, 1000, 5000)。
- 列(从左到右):表示不同的抽样设计(简单随机抽样, 包含10个单位的整群抽样, 包含50个单位的整群抽样)。
图中显示的是模拟的抽样分布,即根据这些设计反复抽取概率样本并计算估计值后,所有可能估计值的分布。
从图中可以得出两个关键结论:
- 样本量增大:随着样本量增加(从上往下看行),抽样分布会变窄(即方差减小)。这印证了“更大样本量,更小抽样方差”的规律。
- 整群抽样影响:当使用整群抽样(通常用于节省数据收集成本)时,抽样分布会变宽(即方差增大)。特别是当每个群内的单位数增加时(从左往右看列),估计值的变异性会显著增加。
图中一个有趣的对比是:一个样本量为500的简单随机抽样的分布宽度,与一个样本量为5000、每群包含50个单位的整群抽样的分布宽度几乎相同。这再次凸显了在概率抽样设计中,设计选择与估计值变异性之间的重要权衡。
总结 📝
本节课中,我们一起学习了:
- 抽样分布是假设反复抽取相同设计的概率样本时,所得估计值的分布。它具有假设性,且在大样本下趋于正态分布。
- 抽样方差衡量了抽样分布中估计值的变异性,根源在于抽样误差(即样本估计值与总体真值之间的差异)。
- 抽样方差对于基于样本推断总体至关重要。更大的样本量可以减小抽样方差,提高估计精度,但也会增加成本,需要在两者间权衡。
- 不同的抽样设计(如简单随机抽样 vs. 整群抽样)会显著影响抽样分布的宽度和抽样方差的大小。
理解这些概念是进行有效统计推断的基石。在下一部分,我们将继续探讨如何实际估计抽样方差,并利用它来构建置信区间。
28:抽样方差与抽样分布(下) 📊

在本节课中,我们将继续探讨抽样分布与抽样方差。我们将了解如何仅通过一个概率样本来估计抽样分布的特征,并利用一个网络应用程序来可视化不同抽样设计下的抽样分布行为。
上一节我们介绍了模拟抽样分布,并讨论了样本量、聚类抽样等因素如何影响估计量的变异性。本节中,我们将探讨抽样方差的重要性,并学习如何在实际研究中应用抽样理论。
为什么抽样方差重要? 🤔
在实践中,我们通常只有资源抽取一个样本。之前看到的模拟是假设性的,我们通过计算机模拟生成了许多估计量,以理解抽样分布的概念。但在现实世界的数据收集中,我们只能基于一个样本进行测量和计算估计。
重要的抽样理论,如20世纪初耶日·奈曼等人的工作,使我们能够仅基于一个样本来估计抽样分布的特征,包括其方差。这是概率抽样的一个奇妙特性:它提供了一种统计机制,让我们在只抽取一个样本的情况下,也能估计抽样分布的变异性。我们无需抽取成千上万个样本并分别计算估计量来确定抽样分布的形状。
概率抽样的“魔力”在于,我们可以选择一个概率样本,并根据该设计的特点(如不同个体的入选概率、分层、整群抽样等),仅凭这一个样本,就能了解预期抽样分布的信息——主要是其方差和均值。这使得我们能够基于一个概率样本,对总体做出有代表性的推断。
基于抽样分布的推断 📈
由于我们可以仅基于一个样本来估计抽样分布的方差,我们便能对基于特定抽样设计的大多数估计值可能落在何处做出推断性陈述。这告诉我们关于总体的一些信息。
我们可以对总体参数的可能值进行陈述,同时考虑到由随机概率抽样产生的抽样误差的变异性。我们不仅可以计算基于概率样本的总体估计(如总体均值或比例),还可以讨论这些估计的变异性有多大,即我们试图计算的估计值存在多少不确定性。能够估计抽样分布的方差,使我们能够描述所计算估计值的变异性。
回顾与可视化工具 🛠️
我们已经讨论了概率抽样的概念,以及如何仅基于一个概率样本(已知所有单元的入选概率以及分层、整群等设计特征)来估计抽样分布的特征。知道了这些信息,我们就可以讨论抽样分布的预期方差,从而计算总体估计并基于我们对抽样分布特征的估计来描述这些估计的变异性。概率抽样使这一切成为可能。
接下来,我们将演示一个网络应用程序,它允许我们在从具有某些特征的总体中抽取随机样本时,可视化抽样分布。您可以在本周的课程列表、应用程序和阅读材料中找到此链接。

我们将使用这个应用程序来观察:
- 随机概率抽样通常产生的抽样分布,其均值接近我们感兴趣的真实总体值。
- 更大的样本会产生方差更小的抽样分布,这与上一部分讨论的模拟类似。
- 有偏的、非代表性的样本如何产生误导性的抽样分布,从而对总体描绘出错误的图景。如果我们抽取的不是一个良好的代表性概率样本,而是偏向于总体的某个特定子集,那么生成的抽样分布将不会以我们感兴趣的真实总体值为中心。这种有偏的抽样机制最终会给我们一个关于总体面貌的误导性图像——基于有偏抽样机制的估计量分布,其变异性可能大致正确,但不会以真实总体值为中心,因为我们每次抽取的样本都不具有代表性。
我们将使用这个网络应用程序来具体说明这个观点。
本节课中,我们一起学习了抽样理论的核心价值:仅通过一个精心设计的概率样本,我们就能估计抽样分布的方差,从而对总体参数进行推断并评估估计的不确定性。我们还了解到,有偏的抽样设计会导致抽样分布偏离真实总体值,产生误导性结论。理解这些概念对于设计和解释基于样本的研究至关重要。
29:交互式抽样分布演示 🎯

在本节课中,我们将通过一个网页应用程序,直观地演示抽样分布和抽样变异的核心概念。我们将探索不同的抽样设计选择如何影响估计结果的准确性和偏差。
概述
上一节我们介绍了抽样分布和抽样变异的基本概念。本节中,我们将通过一个交互式网页应用来具体演示这些概念。该应用允许我们调整不同的参数,观察它们如何影响从总体中抽取样本并计算估计值(如均值)的过程。
应用场景与参数设置
以下是该网页应用模拟的场景和你可以调整的四个关键参数:
目标总体
你可以选择研究整个密歇根大学(University of Michigan)的全体成员,或者仅研究其中去健身房(或拥有健身房会员)的学生、教职员工这一子群体。
样本数量
这是你希望抽取的假设性重复样本的数量。我们讨论的抽样分布正是基于遵循相同概率抽样设计的多次重复抽样。你可以调整这个数量,范围从1到100。
样本容量
这是指每个样本中包含的个体数量。根据中心极限定理,样本容量越大,抽样变异性和抽样误差通常就越小。你可以调整这个值,范围从1到100。
健身房人群比例
这个参数定义了目标总体的特征,即有多大比例的密歇根大学成员属于“健身房人群”。这决定了感兴趣变量(如体重)在总体中的分布形态。
变量与估计量
在进行此类研究时,必须有一个感兴趣的变量。在这个应用中,我们保持简单,将变量设定为体重。
当我们抽取样本时,我们会测量样本中每个人的体重,然后计算样本平均体重作为对总体平均体重的估计。我们的目标是观察这个估计平均体重的抽样分布是否围绕真实的总体均值(参数)中心分布。
演示一:从全体总体中随机抽样
让我们开始第一次演示。我们首先选择“全体密歇根大学成员”作为目标总体。
- 抽取 50 个样本。
- 每个样本的容量为 20。
- 假设总体中 20% 的人去健身房。
点击“抽取样本”后,应用会生成可视化结果。
总体分布
右侧的第一张图显示了总体中体重变量的分布情况。请注意,这不是抽样分布,而是总体中所有个体体重的分布。
- 红色实线:代表全体密歇根大学成员的体重分布。
- 蓝色虚线:代表“健身房人群”的体重分布。
- 绿色虚线:代表“非健身房人群”的体重分布。
在这个模拟设置中,健身房人群的体重分布明显高于非健身房人群,这人为地建立了两组之间的强相关性,以便演示不同抽样的效果。
抽样分布
向下滚动,我们看到第二张可视化图。这里的红线显示了基于我们抽取的50个样本计算出的估计均值(样本平均体重)的分布,这就是我们的抽样分布。
- 黑线:表示这50个估计均值的平均值(即抽样分布的均值)。
- 蓝线:表示真实的总体平均体重。
观察到一个关键现象:黑线(抽样分布均值)与蓝线(总体均值)非常接近。这表明,通过这种随机概率抽样,我们的估计量是无偏的:多次抽样估计值的平均值等于我们感兴趣的总体参数。
同时,我们看到了抽样变异:每个蓝色的点代表一个样本的估计值,它们围绕总体均值上下波动。任何一个单独的样本估计都可能与真实值存在误差(抽样误差)。这种变异性定义了抽样分布的宽度。
演示二:从子群体中非概率抽样(便利抽样)
现在,让我们看看如果采用非代表性抽样会发生什么。假设我们改为在校园健身中心门口进行便利抽样,只调查离开健身房的人。
我们保持参数不变:
- 目标总体改为 “健身房人群”。
- 抽取 50 个样本。
- 每个样本容量为 20。
- 总体中健身房人群比例仍为 20%。
重新抽取样本后,观察结果。
结果分析
总体分布看起来完全一样。然而,抽样分布发生了根本性变化。
真实的总体平均体重(蓝线)位置未变,但抽样分布的均值(黑线)现在大幅右移,落在了健身房人群自身的平均体重附近(约185)。因为我们的抽样机制(便利抽样)只覆盖了一个与总体特征差异巨大的子群体,导致抽样分布不再围绕总体参数中心分布,而是围绕子群体的参数中心分布。
这就是抽样偏差。如果我们基于这样的样本估计总体平均体重,将会得到一个有偏的估计。即使我们增加样本容量以减少变异(如下一步所示),偏差问题依然存在。
演示三:增加样本容量的影响
让我们回到无偏的设定,看看增加资源(样本容量)的效果。
- 目标总体改回 “全体密歇根大学成员”。
- 抽取 50 个样本。
- 将每个样本的容量增加到 100。
- 健身房人群比例仍为 20%。
结果分析
总体分布不变。抽样分布的变化是:其变异性(宽度)显著缩小。估计值更加紧密地聚集在真实总体均值周围。这意味着我们的估计更精确,抽样误差的平均水平更低。当然,更大的样本容量通常意味着更高的成本。
演示四:其他参数的影响
我们可以继续探索其他参数的影响:
- 增加健身房人群比例:如果总体中去健身房的人变多,总体分布和均值本身会发生变化。但使用随机概率抽样,抽样分布依然能无偏地估计这个新的总体均值。
- 极端情况:所有人都去健身房:此时子群体与总体无异,无论怎么抽样,都不会产生因群体差异导致的偏差。
- 减小样本容量:如果将样本容量减小到10,即使采用随机概率抽样,抽样分布也会变得非常宽。估计值虽然平均来看是无偏的(黑线与蓝线重合),但单个估计值的不确定性大大增加。我们可能以较低的代价获得一个无偏但极不精确的估计。
总结
本节课中,我们一起通过交互式演示深入理解了抽样分布和抽样变异。
- 概率抽样(如随机抽样)能确保抽样分布以总体参数为中心,从而得到无偏的估计。我们通过黑线与蓝线的重合观察到了这一点。
- 非概率抽样(如针对特定子群体的便利抽样)可能导致抽样偏差,使抽样分布的中心偏离总体参数,即使增加样本容量也无法纠正这种偏差。
- 样本容量主要影响估计的精确度。容量越大,抽样分布越窄,估计值的变异性越小,结果越精确。
- 抽样变异是不可避免的,它源于只观察总体的一部分。我们可以通过计算标准误等指标来量化这种不确定性。
理解这些概念至关重要,因为它们决定了我们能否从样本数据中对总体做出有效的统计推断。在实践中,只要可能,我们应尽量采用概率抽样设计。
30:超越均值:常见统计量的抽样分布 🧮

在本节课中,我们将要学习抽样分布的核心概念,特别是如何将均值的抽样分布理论推广到其他常见统计量,如相关系数和回归系数。我们将探讨一个关键结果:在大样本下,许多统计量的抽样分布都趋向于正态分布。
欢迎回到我们第四周关于从大总体中抽样以及如何基于样本进行推断的讨论。我们继续在“数据来源”的框架下探讨抽样,这是开始分析数据前的重要步骤。
上一节我们介绍了均值的抽样分布。本节中,我们来看看一个有趣的结果:对于许多常见统计量,只要样本足够大,它们的抽样分布都惊人地趋向于正态分布。我们将讨论如何基于正态抽样分布对其他类型的统计量进行推断,并以此为基础探讨其他抽样方法。
本节课我们关注的核心结果是:当从一个总体中抽取足够大的样本时,大多数我们感兴趣的统计量的抽样分布都会趋向于正态。这个结果与输入变量自身的分布形态无关。
您在此看到的图片展示了一个抽样分布的例子,正如我们之前讨论的:在假设的重复抽样中,我们预计估计值的分布会呈现何种形态。中心极限定理指出,给定足够大的样本,估计值的分布会趋向于钟形曲线或正态分布。
这个基于中心极限定理的结果,推动了基于设计的统计推断(有时也称为频率派统计推断)。其核心思想是,我们可以假设抽样分布是正态的,并基于这个理论上的正态分布,对更大总体中某个统计量的真实值进行推断。
让我们考虑一个例子。本周到目前为止,我们一直在讨论均值的抽样分布,并展示了一个允许您模拟均值抽样分布的网页应用。现在,让我们考虑数据分析中另一种常见的统计量:皮尔逊相关系数。
皮尔逊相关系数描述任意两个连续变量之间的线性关联。本幻灯片展示了几种假设的皮尔逊相关系数示例,通过散点图展示了两个连续变量可能的相关紧密程度。
以下是相关系数取不同值时的典型散点图形态:
- 当皮尔逊相关系数为 1 或 -1 时,两个变量具有极强的线性关联。
- 当相关系数趋近于 0 时,变量之间基本没有相关性,散点图呈现为一片数据点云。
这与简单的均值有很大不同。均值描述样本(并可能推断总体)的中心趋势,而相关系数描述的是两个变量之间的线性关联。它是数据分析中描述变量间初始关联的常用统计量。
接下来,我们将模拟皮尔逊相关系数的抽样分布,类似于我们之前查看的网页应用。我们假设总体中的真实相关系数为 0.7。
这意味着我们讨论的是一个相当强的相关性,虽然不是完美的直线,但两个变量在线性意义上仍具有非常强的相关或关联。我们将从这个真实总体相关系数为 0.7 的总体中,抽取指定样本量(记为 n)的 1000 个样本。我们将对不同的样本量(从 100 到 5000)进行此操作,以说明不同点。
以下是这个小模拟研究的结果。您看到的是一幅抽样分布图。这些蓝色的分布是基于特定大小样本的所有模拟相关系数的分布。
需要记住的是,在真实总体中,相关系数是 0.7。如果我们拥有总体中所有个体的数据并计算皮尔逊相关系数,结果将是 0.7。图中显示,对于样本量为 15、100、500、5000 的情况(即每个样本都具有特定大小,我们基于该简单随机样本中的模拟数据计算相关系数),这些就是会出现的相关系数分布。
关于这些抽样分布,有几个关键点需要注意。首先,所有分布都近似正态。您可以看到,基于一千个样本的估计值分布都呈现钟形曲线,并且它们都以真实相关系数为中心。
这意味着简单随机抽样平均而言为我们提供了该相关系数的无偏估计。所有这些估计值的平均值将等于 0.7,即真实的总体参数。您可以看到所有分布都以大约 0.7 为中心,并且都近似正态分布。因此,几乎无论样本量大小,它们都遵循这些正态分布。
但我们注意到,随着样本量 n 的增加,分布变得更加对称,且离散程度减小。如果您观察这四个不同图的X轴,会发现对于样本量为 100 的情况,那些大小为 100 的样本的估计相关系数范围大约在 0.55 到 0.85 之间。但随着样本量增大,这个范围缩小了。在重复样本中,估计值的分布离散度更小。
当每个样本的样本量达到 5000 时,估计的相关系数范围大约在 0.69 到 0.73 之间,同样以 0.7 为中心。这说明中心极限定理在起作用:我们得到了这些漂亮的正态分布,并且随着样本量增大,我们对总体参数的估计更加精确。对于样本量为 5000 的情况,范围在 0.69 到 0.73 之间,抽样分布的离散度更小。这就是“更大样本带来更精确估计”这一概念的来源。
我们来看另一个模拟。刚才我们看了相关系数的案例。数据分析中另一种非常常见的统计量是回归系数。
回归分析使我们能够评估多个变量之间的关系,我们将在本专项课程中详细讨论。这张图再次展示两个变量之间的估计关系,我们现在关注的是估计的斜率,即预测变量 x 每变化一个单位时,因变量 y 的估计变化量,它描述了两个连续变量之间的线性关系。
与仅提供简单相关性描述的相关系数分析不同,在线性回归中,我们实际上可以估计这个斜率参数。我们旨在估计描述 y 随 x 单位变化而变化的斜率。该图展示了针对一系列假设数据点拟合的简单线性回归模型,描述了二者之间的线性关系。
我们将以相同的思路进行模拟:针对不同大小的样本,多次计算回归斜率,以观察这些抽样分布的变化。
我们将假设在我们感兴趣的总体中,真实的线性关系由以下回归方程描述:
Y = 2 * X + ε
(其中 ε 代表随机误差)
因此,我们通过抽样试图估计的真实斜率实际上是 2。我们将再次抽取 1000 个指定样本量 n 的样本,并对同一组四个不同的假设样本量(100、500、1000、5000)进行此操作。
这是这些抽样分布的另一张图。您首先观察到的是,它看起来和上一张幻灯片非常相似。所有分布都看起来非常正态且相当对称。同样,随着样本量增加,您可以看到那些估计回归系数的离散范围再次缩小。因此,在不同假设样本之间,估计值的变异性减小了。
所有这些不同的分布都近似正态,并以真实斜率(2)为中心。随着样本量 n 的增加,它们变得更加对称,离散度更小。

就抽样分布的性质而言,许多常用统计量的抽样分布(无论其复杂性如何)往往具有以下性质:趋向于正态、趋向于对称、以真实值为中心。更大的样本量意味着估计值的变异性更小。
这里传达的关键点是:我们可以仅基于一个样本来估计这些正态分布的方差。这使我们能够在考虑抽样变异性的同时,对更大的总体进行推断。
在本专项课程后续部分,我们还将处理非正态的抽样分布。并非所有统计量都像我们目前看到的均值、相关系数和回归系数那样具有正态抽样分布。在这些情况下,需要进行更专门的程序来进行总体推断。
我们将讨论像贝叶斯方法这样的思想。本专项课程后面会讨论的一个很酷的例子是方差成分统计量(在多层次建模的背景下)。这些统计量的抽样分布通常不是正态的,我们将讨论在这些情况下如何进行推断。
那么接下来是什么?我们究竟如何基于一个样本进行总体推断?我们已经讨论了很多关于抽样分布的内容,现在我们要迈出下一步:基于仅仅一个样本,我们最终将如何进行总体推断?我们可以基于那个样本来估计抽样分布的特征,但如何从这一点出发,最终做出总体推断呢?
本节课中我们一起学习了抽样分布的核心原理,特别是中心极限定理如何使许多常见统计量(如相关系数和回归系数)的抽样分布在大样本下趋向于正态。我们通过模拟观察到,这些分布以真实参数为中心,且随着样本量增大,其离散度减小、估计更精确。我们还了解到,仅凭一个样本即可估计抽样分布的方差,这是进行统计推断的基础。最后,我们简要提及了非正态抽样分布的存在,为后续更高级的推断方法做了铺垫。
31:基于单样本的总体推断 📊

在本节课中,我们将学习如何仅基于一个实际样本,对总体参数进行统计推断。我们将探讨两种核心方法:构建置信区间和进行假设检验,并理解抽样设计对推断过程的影响。
概述
在之前的课程中,我们讨论了抽样分布的概念,即在特定抽样设计下,理论上可以抽取成千上万个样本,并模拟所有可能估计值的分布情况。然而在实践中,我们通常只有一个样本。本节课的目标,就是学习如何基于这一个样本来对总体进行推断。
我们将介绍两种通用的总体推断方法:一是为感兴趣的总体参数估计一个置信区间,二是对感兴趣的参数进行假设检验。同时,我们会探讨抽样设计如何影响这些推断过程。
我们所说的“感兴趣的参数”,是数据分析的最终产物。它可能是总体均值、比例、回归系数或比值比等。这些统计量用于回答研究问题,描述总体的某个特征,无论是关系还是描述性统计量。
核心假设:抽样分布的正态性
进行推断的一个关键假设是抽样分布的正态性。无论是构建置信区间还是进行假设检验,都假设这些估计值的抽样分布近似服从正态分布。
根据中心极限定理,对于各种相对适中的样本量,只要样本量足够大,抽样分布往往呈现正态形态。这里的“抽样分布”,指的是在假设的重复抽样中,某个参数估计值的所有可能取值的分布。我们的推断正是基于这个分布的形状来进行的。
一个常见的问题是:如果抽样分布实际上不近似正态,我们还能使用这些推断方法吗?答案是,在本课程后续部分,我们将讨论适用于这些情况的替代推断方法。然而,许多常见的统计量确实服从正态抽样分布,本节课将主要讨论这种情况下的方法。
推断步骤详解
第一步:计算点估计
我们首先需要计算一个点估计,即对总体感兴趣参数的一个估计值。
什么是无偏点估计?
这意味着,在假设的重复抽样中,该点估计所有可能取值的平均值(也称为该点估计的期望值)等于真实的参数值。我们说一个估计是无偏的,就是指在假设的重复抽样中,其所有可能值的平均值等于真实参数值。
幻灯片上的图示说明了这一点:红色分布代表无偏估计的抽样分布,其中心位于真实参数值(直线所示)。这意味着,平均而言,这些假设样本产生的估计值会给出真实的参数值。而蓝色分布代表有偏估计,其分布中心偏离了真实参数值。
因此,我们努力设计能产生无偏估计的样本。这意味着,在给定的抽样设计下,我们计算出的总体参数估计值应是无偏的。例如,如果样本中个体的入选概率不相等,就需要在计算有限总体参数估计时使用权重。如果不使用权重,我们的抽样分布就会发生偏移,导致估计有偏。
所以,第一步是根据需要,使用权重计算出一个无偏的点估计。
第二步:估计抽样方差
接下来,我们需要估计与该点估计相关的抽样方差。这相当于估计抽样分布的方差。我们无法抽取成千上万个样本来计算方差,因此必须基于这一个样本来估计。
类似于计算参数的无偏点估计,我们也希望得到抽样方差的一个无偏估计。一个无偏的方差估计能正确描述在所用抽样设计下,抽样分布的变异性。
幻灯片图中的蓝色箭头指示了我们试图基于单个样本估计的变异性。一旦我们有了这个变异性的良好无偏估计,我们就具备了推断总体参数值所需的工具。
一个关键点:标准误
我们试图估计的方差的平方根,称为点估计的标准误。标准误本质上是抽样分布的标准差。我们估计抽样分布的方差,取其平方根得到标准差,即标准误。我们使用这个标准误来对总体参数进行推断。
推断方法一:构建置信区间
第一种推断方法是构建置信区间。其做法是:取我们最好的估计(无偏点估计),然后加上或减去一个误差范围。这样,我们在描述总体中该参数的合理取值时,就考虑到了抽样变异性。
- 最佳估计:参数的无偏点估计。
- 误差范围:通常是估计标准误的若干倍。这个“若干倍”是一个来自适当分布的乘数,取决于所需的置信水平和相应的抽样设计。
例如,常用的95%置信水平对应0.05的显著性水平。这意味着,以这种方式构建的区间中,有95%会覆盖真实的总体参数。如果我们取最佳估计,加减大约两倍的标准误,那么以这种方式构建的区间中,有95%会覆盖我们感兴趣的真实参数。
图示理解
图中,黑色向下的箭头代表真实参数值。每条水平线代表一个以此方式构建的置信区间(最佳估计 ± 2倍标准误)。可以看到,在假设的重复抽样中,绝大多数这样构建的区间都覆盖了真实参数值(黑线),但也有一些没有。
重要提醒
要做出正确的总体推断,必须确保以下三点都正确:
- 用于构建区间的最佳估计确实是无偏点估计。
- 误差范围使用了正确的乘数(例如,对于95%置信区间,通常使用2)。
- 误差范围使用了标准误的无偏估计。
如果任何一点出错,置信区间将无法达到所宣称的覆盖真实参数的概率(例如,名义上是95%,实际可能只有90%或80%)。
置信区间为我们提供了总体参数的合理取值范围。如果某个假设的总体参数值落在置信区间之外,我们通常认为没有足够的统计证据在相应的显著性水平上支持该值。
推断方法二:假设检验
第二种推断总体参数的方法是假设检验。
我们的假设可能是:参数的值等于某个特定值(即零假设或原假设值)。我们通过检验来回答这个问题:参数的点估计是接近这个零值,还是相距甚远?这里,我们再次使用标准误作为衡量尺子。
一个常见的检验统计量形式是:
检验统计量 = (无偏点估计 - 零假设值) / 标准误
这个公式衡量了我们的估计值与零假设值之间的距离,除以标准误后标准化,告诉我们证据反对零假设的强度。
如果零假设为真,我们可以计算看到如此极端或更极端检验统计量的概率。如果这个概率很小,我们就有理由拒绝零假设。
重要前提:概率抽样
所有这些推断程序的有效性,都建立在使用了概率抽样的基础上。 我们描述的所有技术都依赖于概率样本的理念。
如果数据来自非概率样本,推断方法通常需要依赖建模。即通过拟合统计模型来对估计值下结论,而不能依赖概率抽样框架所提供的、已知抽样分布形态的“安全保障”。我们也可以将数据与其他概率样本结合,使用混合方法进行推断。

总结
在本节课中,我们一起学习了如何基于单个样本对总体进行统计推断。核心内容包括:

- 核心前提:依赖于抽样分布近似正态的假设,以及中心极限定理的支持。
- 关键步骤:首先计算参数的无偏点估计,然后估计其抽样方差并得到标准误。
- 两种主要方法:
- 置信区间:通过“点估计 ± 误差范围(乘数 × 标准误)”构建,提供一个参数的可能取值范围(如95%置信区间)。
- 假设检验:通过计算标准化后的“(点估计 - 假设值)/ 标准误”作为检验统计量,评估证据反对零假设的强度。
- 根本基础:所有这些经典推断方法的有效性都依赖于概率抽样设计。对于非概率样本,需要采用不同的建模或数据融合策略。

掌握这些概念,是理解如何从样本数据得出关于总体可靠结论的基础。
32:非概率样本的统计推断 📊

在本节课中,我们将学习如何基于非概率样本对总体参数进行统计推断。我们将探讨两种主要方法:准随机化法和总体建模法,并理解它们如何克服非概率样本缺乏传统抽样理论支持的局限性。
概述
上一节我们讨论了如何基于单一概率样本来推断总体参数。本节中,我们来看看当数据并非来自概率样本,而是来自非概率样本(如志愿者样本、滚雪球样本)时,应如何进行统计推断。核心问题在于,非概率样本无法依赖传统的抽样分布理论,因此需要借助其他统计方法。
准随机化法
准随机化法的核心思想是,将非概率样本的数据与另一个收集了相同测量变量的概率样本数据相结合。通过这种方式,我们利用概率样本的已知信息来“校准”非概率样本,从而进行推断。
以下是实施此方法的关键步骤:
- 数据合并:将非概率样本数据集与一个独立的概率样本数据集纵向合并。两个数据集必须包含一些共同的测量变量(例如年龄、血压)。
- 创建指示变量:在合并后的数据集中创建一个新变量(例如
NP_sample),用于标识每条记录是来自非概率样本(值为1)还是概率样本(值为0)。 - 拟合逻辑回归模型:以共同变量(如年龄、血压)为自变量,以
NP_sample为因变量,拟合一个逻辑回归模型。拟合时,非概率样本的个案权重设为1,概率样本的个案则使用其原有的调查权重。 - 计算预测概率与权重:使用拟合好的模型,预测每个个案出现在非概率样本中的概率。然后,取该概率的倒数,作为该个案在新的加权分析中的“调查权重”。
- 进行加权分析:使用这些新计算的权重,对非概率样本中我们真正感兴趣的变量进行标准的加权分析(如计算加权均值)。
核心公式/代码概念:
逻辑回归模型预测个体 i 属于非概率样本的概率:
P(NP_sample_i = 1 | X_i) = exp(βX_i) / (1 + exp(βX_i))
其中,X_i 是共同变量向量,β 是模型系数。随后,分析权重为:
weight_i = 1 / P(NP_sample_i = 1 | X_i)
方差估计的挑战与复制法
准随机化法的一个关键挑战是如何估计抽样方差。对于概率样本,我们可以直接计算标准误。但对于使用上述方法生成的新权重,没有明确的数学公式来估计其抽样分布。
文献中建议使用复制法来解决此问题:
- 从原始数据中重复抽样:对合并后的数据集进行多次有放回的再抽样(例如自助法),生成多个复制样本。
- 重复整个过程:对每个复制样本,重复执行准随机化法的所有步骤:合并数据、拟合模型、计算新权重、得出目标变量的估计值(如均值)。
- 构建经验抽样分布:将所有复制样本计算出的估计值收集起来,它们的分布就模拟了该估计量的经验抽样分布。
- 计算方差:基于这个经验分布,我们可以计算估计值的方差和标准误。
这种方法通过计算机模拟,绕过了复杂的理论推导,为基于非概率样本的推断提供了可行的方差估计途径。
总体建模法
总体建模法是另一种处理非概率样本的思路。它不依赖于另一个概率样本,而是利用总体中所有个体都具备的辅助信息,通过预测模型来填补非样本个体的信息空缺。
以下是此方法的实施步骤:
- 数据基础:我们有一个包含总体中所有个体的数据集,其中每个人都有丰富的辅助信息(如人口统计学变量、消费记录等)。但只有非概率样本中的个体,才被测量了我们关心的核心变量(如对某产品的满意度)。
- 拟合预测模型:在非概率样本子集上,以核心变量为因变量,以辅助信息为自变量,拟合一个回归预测模型(如线性回归、决策树等)。
- 预测总体值:使用拟合好的模型,对总体中未被纳入非概率样本的所有个体,预测其核心变量的值。
- 计算总体估计:现在,对于总体中的每个人,我们都有了一个值:非样本个体是预测值,样本个体是观测值。利用这些值,我们可以计算总体参数的估计。例如,总体均值的估计为:
总体均值估计 = (所有个体的预测值/观测值之和) / 总体大小
核心公式/代码概念:
假设我们拟合了一个线性回归模型:Y = α + γZ + ε,其中 Y 是核心变量,Z 是辅助变量。
对于非样本个体 j,其预测值为:Ŷ_j = α̂ + γ̂Z_j。
总体总值估计为:T̂ = Σ_(i∈样本) Y_i + Σ_(j∉样本) Ŷ_j
总体均值估计为:μ̂ = T̂ / N,其中 N 是总体大小。
两种方法的比较与总结
本节课我们一起学习了两种基于非概率样本进行统计推断的主流方法。
- 准随机化法 的核心是结合概率样本,通过建模预测个体“进入”非概率样本的概率,并以此生成分析权重。它要求有一个收集了相同变量的概率样本作为基准。
- 总体建模法 的核心是利用总体辅助信息,通过建模预测未受访个体的核心变量值。它不要求额外的概率样本,但要求拥有覆盖总体的、高质量的辅助信息。
两种方法都严重依赖于高质量的辅助信息和优秀的预测模型。无论是预测入样概率还是预测变量本身,模型的准确性直接决定了推断的可靠性。在缺乏此类信息的情况下,基于非概率样本做出有效的总体推断将变得异常困难。
对于方差估计,两种方法都可以借助复制法(如自助法)来获得经验标准误,从而构建置信区间或进行假设检验。

总结:非概率样本虽然获取成本低、方式灵活,但进行统计推断需要更复杂的方法和更强的假设(主要是模型假设)。准随机化法和总体建模法为我们提供了两条可行的路径,但它们都要求我们拥有并善用样本之外的额外信息来弥补非随机抽样带来的缺陷。
33:复杂样本处理方法 🧮

在本节课中,我们将深入学习复杂样本。我们将探讨复杂样本的设计特征,以及基于此类样本进行总体推断时需要考虑的关键因素。理解这些概念对于正确分析调查数据至关重要。
概述
复杂样本是指任何设计上比简单随机抽样更复杂的概率样本。我们将深入回顾复杂样本,并讨论基于这些样本进行总体推断时的重要考量。
复杂样本的特征
上一节我们介绍了概率抽样和非概率抽样的基本概念。本节中,我们来看看复杂概率样本的几个关键设计特征。
分层
分层是指将总体样本分配到不同层或总体中互斥的划分中。例如,在美国的一项全国性调查中,可以将美国划分为四个不同的地理区域作为分层。
以下是分层中一种常见的分配方案示例:
- 比例分配:假设总体中70%的单位属于层1,30%属于层2。那么,总体样本的70%将分配给层1,30%分配给层2。这意味着,如果我想抽取100个个体,其中70个来自层1,30个来自层2。
分层设计有一个非常吸引人的特性:它能从总体抽样方差中消除层间方差。因为在我们所有假设的重复抽样中,每个样本都严格按照相同的比例从各层抽取,这确保了每个层在所有样本中都有代表。如果不进行分层,我们可能会抽到某些层完全没有代表的随机样本。
因此,在数据分析中考虑分层非常重要。如果实际使用了分层抽样,但在分析时没有考虑,我们估计的标准误可能会比实际应有的更大,导致置信区间过宽,推断过于保守。
整群抽样
整群抽样是指对更大的群体单元(群)进行随机抽样,可能涉及多个阶段。例如,在一项全国性调查中,我们可能首先随机抽取一些县,然后在抽中的县内随机抽取区域段,最后在区域段内抽取家庭。
整群抽样在实践中用于降低数据收集成本。访问一个广泛分布总体中的随机分散单元非常昂贵,而访问集中的群则方便得多。
然而,整群抽样往往会增加我们估计值的抽样方差。这是因为来自同一群的个体在感兴趣的变量上往往具有相似或相关的值,我们获得的信息独特性降低。如果不同群之间的差异很大,我们的估计值就会更分散。
因此,与分层类似,在分析调查数据时考虑整群抽样至关重要。否则,我们的推断可能会变得过于“自由”,置信区间可能过窄,因为我们忽略了增加估计变异性的设计因素。
加权
复杂样本(例如,在分层内进行多阶段整群抽样,或对某些亚群进行过度抽样)可能导致不同总体单元具有不相等的入样概率。
为了基于这种样本做出无偏的总体推断,我们需要使用权重来调整这些不相等的概率。权重通常定义为个体入样概率的倒数。
公式:权重 = 1 / (入样概率)
例如,如果我的入样概率是1/100,那么我的权重就是100。这意味着在总体中,我代表我自己和另外99个个体。
权重还可能针对不同亚群的不同调查应答率进行调整。例如,如果我的初始权重是100,但我所属的亚群(如白人男性)应答率只有50%,那么我的调整后权重可能变为 100 * (1 / 0.5) = 200,以代表那些未被抽中或未应答的相似个体。
在分析中使用权重对于计算无偏的点估计至关重要。如果不使用权重,可能会导致严重的估计偏差,特别是当权重或应答概率与感兴趣的变量相关时。
然而,使用权重(尤其是变异性很大的权重)的缺点是,它往往会增加加权估计值的抽样方差,带来更多的不确定性。
设计效应
将上述思想综合起来,就引出了设计效应的概念。设计效应衡量的是复杂样本设计对我们感兴趣的总体抽样方差的净乘性影响。
- 分层倾向于降低抽样方差(减少标准误)。
- 整群抽样和加权倾向于增加抽样方差(增大标准误)。
设计效应就是所有这些复杂样本设计特征对估计量方差的净影响,相对于简单随机抽样而言。它为样本设计者提供了如何改进设计以最小化方差增加的思路。
在分析方面,大多数统计软件中的调查分析程序都提供了工具,可以利用最终调查权重计算无偏的点估计,并计算能反映所用分层、整群和加权设计的无偏抽样方差估计。关键在于,我们需要在分析中指明这些特征(如权重变量、分层代码、整群代码),而不是完全忽略它们。
分析误差与数据文档
在数据分析中未能识别和考虑复杂样本的这些特征,通常被称为分析误差。许多调查数据的二次分析者没有将这些抽样特征考虑在内。
这可能导致基于调查数据的推断出现严重偏差。如果数据提供了权重,我们至少需要在计算点估计时考虑它们。如果使用了分层和整群抽样,我们必须在估计抽样方差时加以考虑。
因此,在开始分析任何调查数据之前,仔细阅读数据文档至关重要。你需要了解:
- 使用了哪种抽样方法?(概率、非概率、复杂样本?)
- 是否进行了加权、分层或整群抽样?
- 数据中哪些变量对应权重、分层代码和集群代码?
在文档中寻找诸如“多阶段抽样”、“权重”、“分层”、“整群抽样”、“设计效应”等关键词。对文档的仔细评估,始终是理解数据来源和如何进行正确分析的基础。
总结与后续
本节课中,我们一起学习了复杂样本处理的核心概念。我们探讨了复杂样本的三个关键特征:分层(可降低方差)、整群抽样(可降低成本但增加方差)和加权(用于调整不等概率,确保无偏但可能增加方差)。我们引入了设计效应来衡量复杂设计对抽样方差的净影响,并强调了在分析中考虑这些特征以避免分析误差的重要性。理解数据来源并仔细阅读文档是进行任何优质分析的第一步。
在本专业的后续课程中,我们将具体介绍如何使用Python分析来自复杂样本的调查数据,包括计算加权估计、估计抽样方差以及进行各种推断分析。对数据来源的深刻理解,将始终是你提高分析质量的关键。

如需深入了解复杂样本,可参考《Applied Survey Data Analysis》第二版等相关书籍和资源。
34:欢迎来到《使用Python的统计学》🎓


在本节课中,我们将要学习《使用Python的统计学》系列课程的第二门课——统计推断分析。这门课程将建立在第一门课的基础上,帮助你全面理解统计学,并学会使用Python应用所学知识。
课程概述 📋
欢迎来到《使用Python的统计推断分析》。这是《使用Python的统计学》系列专项课程中的第二门课。每门课程都建立在前一门课程的基础上,让你对统计学有一个全面而深入的理解,并能够使用Python应用所学内容。
课程结构 🏗️
第二门课程包含四个部分。以下是各部分内容的简要介绍。
第一部分:课程预览与基础活动
在课程的第一部分,我们将预览推断技术以及我们将要探索的研究问题。你将有机会与我们分享你在生活中观察到的研究问题。我们会进行一个“大A或大B”活动,帮助我们更好地理解如何利用数据在竞争理论之间做出决策。我们还会进行一些“这个或那个”活动,让我们对课程中将要用到的一些术语和符号更加熟悉。在编程方面,我们将使用Jupyter笔记本,并学习一些中级Python概念。
第二部分:参数估计与置信区间
上一节我们介绍了课程的整体结构,本节中我们来看看第二部分的核心内容。我们将开始探讨“参数值是多少?”这个问题。我们将学习如何用置信度来估计参数。我们将超越最佳估计值,引入正负误差范围,从而得到一个我们相当有信心的、合理的参数值范围。
第三部分:假设检验与P值
接下来,我们将转向回答“是否存在显著差异?”这类性质的问题。我们将学习假设检验技术,即获取数据、将其转换为检验统计量、并计算出相应的P值,以帮助我们在竞争理论之间做出决策。我们将围绕P值、P值操纵以及进行研究时的一些良好实践展开有趣的讨论。你将参与一个与巧克力相关的有趣活动——一项旨在决定是否应在自行车运动员的饮食中引入巧克力以帮助他们提高表现的实验。
第四部分:应用、深入探索与结果沟通
在第四部分,我们将开始学习应用,并对其他一些概念进行更深入的探讨。我们将重点练习如何更好地沟通推断结果。我们将处理复杂的抽样设计,并简要讨论一些其他的推断方法。
学习支持与资源 💡
在整个课程中,我们将为你提供评估学习成果的机会。课程资源允许你对其他一些主题进行更深入的探索。你还可以通过一些网络小程序进行动手实践,当然,还有你的Python教程。你将有机会听到我们多位团队成员的分享,我们将与你分享我们对统计推断的观点和见解。
总结 ✨
本节课中,我们一起学习了《使用Python的统计推断分析》课程的总体介绍和结构。我们了解到本课程是系列专项课程的第二部分,包含四个主要模块:课程预览与基础、参数估计、假设检验以及高级应用与沟通。课程将结合理论讲解、实践活动和Python编程,帮助你掌握使用数据进行统计推断的核心技能。
35:基于Python的统计推断学习指南 📘


在本节课中,我们将学习如何高效地从《使用Python的统计学》课程中获取知识。课程将重点介绍如何结合视频讲座与Jupyter Notebook进行学习,并提供关于课程结构、学习方法以及如何寻求帮助的实用建议。
课程结构与学习方法 🧩
上一节我们介绍了课程的整体目标,本节中我们来看看课程的具体结构以及推荐的学习方法。
本课程严重依赖Jupyter Notebook来演示和说明使用Python讲解的统计概念。通常,Notebook会安排在一系列讲座、练习和每周测验之后。
以下是第一周课程内容的示例:
- 一系列视频讲座。
- 一些阅读材料。
- 一个讨论主题。
- 在每周内容末尾,可以找到相关的Notebook。
Notebook通常与视频成对出现。我们强烈建议你不要等到看完所有讲座后才打开Notebook。
同步学习策略 💻
上一节我们了解了课程材料的位置,本节中我们来看看如何有效地同时使用它们。
我们鼓励你在观看各种讲座时,同步打开相应的Notebook。你可以在讲座暂停时,立即在Notebook中尝试刚学到的内容。
使用大显示器或多个显示器有助于你更方便地实施这种学习方式。以往的学习者发现,这种方法能最大限度地提高信息吸收效率,并增强你将所学知识应用于Python的实践感。
以下是我在学习第一周部分内容时的工作空间快照:
- 在一个屏幕上,播放着团队成员讲解Python函数概念及如何定义函数的视频。
- 在另一个屏幕上,我打开了Notebook,准备尝试视频中演示的相同步骤。
统计推断内容概览 📊
在第二、三、四周,我们将为你介绍各种统计推断技术的示例。
你将初步了解针对几种总体参数的置信区间估计和假设检验思想。对于总体比例的推断,会有更多视频供你深入学习。对于后续的其他参数,我们会提供一个优质示例让你熟悉该类型场景。
我们不会深入讲解你将看到的所有推断方法的复杂细节,也无法涵盖你可能想了解的所有推断方法。
因此,我们对这几周的学习建议是:充分利用你已掌握的基础内容。
以下是具体建议:
- 不要跳过阅读材料。它们将为你提供关于这些推断技术实质的坚实基础。
- 作为学习者,你将有能力通过自主研究来掌握那些复杂细节和相关技术。
- 你可以超越课程涵盖的内容去学习更多知识,使这些概念更加具体。你将准备好持续学习。
提问与互动渠道 ❓
接下来,我们讲师欢迎你就课程内容提出个人问题。
虽然这些问题可能无法立即得到解答,但当问题被回答后,它们将作为常见问题(FAQ)提供,以供未来的学习者参考,从而提升他们的学习体验。
大多数问题会在讨论区得到快速解答。但你也完全可以提出更复杂的问题,这些问题会被转交给讲师处理。
利用课程资源 📚
最后,我们也在向你们学习。过去,有些学习者发现某些主题更难掌握。
例如,在第四周,你将了解如何考虑复杂抽样设计对推断过程的影响。我们鼓励你充分利用贯穿整个课程的阅读材料,其中许多材料包含核心思想总结和额外资源的链接。

总结 ✨

本节课中,我们一起学习了如何高效学习《使用Python的统计学》课程。我们了解了课程材料的结构,掌握了同步观看视频与操作Notebook的学习策略,预览了统计推断部分的学习重点,并知道了如何通过提问和利用阅读材料来深化理解。希望这些指南和技巧能帮助你在学习后续极具价值的内容时更加得心应手。
36:统计推断方法导览 🧭

在本节课中,我们将对后续课程中将要遇到的几种统计推断方法进行介绍。我们将学习如何利用数据,通过置信区间来估计感兴趣的参数,或者对这些参数的相关理论进行假设检验。
参数估计:从比例到均值
上一节我们介绍了统计推断的基本目标。本节中,我们来看看几种具体的参数估计场景。
以下是几种常见的估计目标:
- 估计总体比例:例如,我们想知道“所有幼儿家长中,报告在出行时始终使用儿童安全座椅的比例是多少?”这里的关注点是比例,我们希望通过数据来估计这个未知的总体比例。
- 估计总体均值:例如,我们想了解“所有成年人侧手翻的平均距离是多少?”这里的关注点是平均值或均值,我们同样希望估计这个总体均值。
- 估计配对总体均值差:例如,在研究双胞胎数据时,我们想了解“年长双胞胎与年幼双胞胎在自我报告教育年限上的平均差异是多少?”这里的测量值是配对的(每一对双胞胎),关注点仍然是平均差异。

假设检验:验证理论与比较群体
在学会了如何估计参数后,我们还需要学习如何检验关于这些参数的假设或理论。
以下是几种常见的假设检验场景:
- 比较两个独立群体的均值:例如,我们感兴趣的问题是“居住在美国的墨西哥裔成年男性,其平均身体质量指数是否显著高于女性?”这里我们有两个独立的群体(男性和女性),目标是检验一个群体的均值是否显著高于另一个。
- 检验总体比例的变化:例如,过去约有52%的家长认为电子产品和社交媒体是导致青少年睡眠不足的原因。我们想知道“如今这个比例是否上升了?即是否有更多家长认同这一观点。”这里我们将当前的观测比例与一个已知的历史比例(52%)进行比较,检验关于总体比例的理论。
总结
本节课中,我们一起学习了统计推断的两大核心任务:参数估计与假设检验。我们通过几个例子,预览了后续课程中将深入探讨的具体方法,包括对总体比例、总体均值、配对均值差进行置信区间估计,以及对总体比例变化和两个独立总体均值差异进行假设检验。这些方法将帮助我们利用数据,对更广泛总体的情况做出有依据的推断。
37:3_A袋或B袋:概率选择问题 🎲


概述
在本节课中,我们将学习决策制定和理论检验背后的一些基本思想。我们将通过一个“A袋或B袋”的选择游戏,来理解如何根据数据在两个竞争理论(假设)之间做出决策,并介绍假设检验中的核心概念,如原假设、备择假设、显著性水平、P值以及两类错误。
两个袋子与两种理论
我们有两个袋子:A袋和B袋。每个袋子里都有20张代金券,上面写有金额。
- A袋:包含一张-1000美元的代金券和一些正金额的代金券。所有代金券的总价值为-560美元。
- B袋:包含的所有代金券金额均为正数。所有代金券的总价值为1890美元。
游戏规则如下:袋子的标签将被移除并充分混合。然后,你可以从展示给你的袋子中抽取一张代金券作为数据。根据这个数据,你需要判断这个袋子是A袋还是B袋。之后,你可以选择保留当前展示的袋子,或者要求换成另一个袋子。最终,你得到的袋子将决定你的收益:如果是A袋,你将支付560美元;如果是B袋,你将获得超过1000美元。
显然,我们都不想要A袋。
另一种理解方式是,我们有两个关于所展示袋子的不同模型或理论:
- 原假设 (H₀):袋子是A袋(我们想拒绝的理论)。
- 备择假设 (H₁):袋子是B袋(我们更希望成立的理论)。
这两个模型由以下两个频率图表示。
如何制定决策规则?
上一节我们介绍了游戏背景和两种竞争理论。本节中,我们来看看如何根据抽到的代金券金额来制定决策。
我们将从简单的情况开始分析。
- 情况一:如果抽到 -1000美元 的代金券,我们知道这是A袋。我们会说:“我不要这个袋子,请给我另一个。”
- 情况二:如果抽到 1000美元 的代金券,我们知道这是B袋。我们会说:“请把这个袋子给我。”
- 情况三:如果抽到 60美元 的代金券。这个金额在两个袋子中都可能出现。但观察图表,60美元出现在B袋中的可能性远高于A袋。因此,我们很可能选择备择假设,认为这是B袋。
- 情况四:如果抽到 10美元 的代金券。这个金额更可能来自A袋。因此,我们会选择原假设,认为这是A袋。
我们正在形成一个决策规则:我们观察数据(代金券金额),判断哪些值在原假设下显得“不寻常”(即更可能出现在备择假设下),这些值将引导我们拒绝原假设。
让我们再试几个值:
- 50美元:更可能来自B袋,因此我们会拒绝原假设。
- 20美元:更可能来自A袋,因此我们会不拒绝(保留)原假设。
- 30或40美元:在两个模型下出现的可能性相当,决策会更困难。
哪些值通常会导致我们说“我认为是B袋”并拒绝原假设?是那些较大的值。因为在这个例子中,较大的值在备择假设(B袋)下更可能出现,在原假设(A袋)下较不可能出现。这些较大的值被认为是更“极端”的,引导我们拒绝原假设。因此,我们的极端方向是向右(更大的值)。
一个潜在的决策规则及其错误评估
基于以上分析,我们可以制定一个具体的决策规则。例如:如果我们抽出的代金券金额大于或等于50美元,我们就拒绝原假设(认为袋子是B袋)并保留它。
这个规则合理吗?我们甚至可以在看到数据之前就评估这个规则的性能,因为决策可能犯两种错误。
以下是两种可能犯的错误:
- 第一类错误:拒绝了实际上为真的原假设(即袋子实际上是A袋,但我们错误地认为它是B袋)。
- 第二类错误:没有拒绝实际上为假的原假设(即袋子实际上是B袋,但我们错误地认为它是A袋)。
让我们用我们设定的规则(≥50美元则拒绝)来计算这两种错误的概率。
- 第一类错误概率 (α):如果原假设为真(袋子是A袋),查看A袋的分布。哪些值会导致我们拒绝原假设?是50美元和60美元。在20张代金券中,只有2张符合条件。因此,第一类错误概率 α = 2/20 = 10%。
- 第二类错误概率 (β):如果备择假设为真(袋子是B袋),查看B袋的分布。哪些值会导致我们不拒绝原假设?是10美元、20美元、30美元、40美元、50美元、60美元(注意:根据规则,50美元会导致拒绝,所以这里应只包括导致“不拒绝”的值,即10、20、30、40美元。但根据视频原文上下文,此处计算似乎包含了50和60美元,我们按原文逻辑处理)。在20张代金券中,有6张(10, 20, 30, 40, 50, 60)会导致我们不拒绝。因此,第二类错误概率 β = 6/20 = 30%。
这两类错误有专门的名称和符号:
- 第一类错误概率记为 α,也称为显著性水平。
- 第二类错误概率记为 β。
我们可以看到,如果我们调整决策规则的临界值(比如改为≥40美元则拒绝),α和β的数值会发生变化,存在此消彼长的关系。
从固定规则到P值方法
上一节我们设定了一个具体的金额(50美元)作为决策临界值,这相当于预先设定了显著性水平 α = 10%。我们要求,数据结果必须“不同寻常”到在原假设下只有10%或更小的机会出现,我们才会拒绝原假设。
然而,更通用的方法不是针对每个不同问题都去考虑具体的响应值,而是:
- 预先设定一个你愿意接受的显著性水平 α(例如5%,1%)。
- 然后收集数据,并计算一个来自数据的概率,称为 P值。
P值 表示的是:在原假设为真的前提下,得到当前观测结果或更极端结果的概率。
一个普适的决策规则是:如果 P值 ≤ α,则拒绝原假设;如果 P值 > α,则不拒绝原假设。
应用P值方法进行决策
让我们用P值方法重新审视游戏。假设我们从袋子中抽出了一张 40美元 的代金券。
- 根据之前的固定规则:我们需要≥50美元才能拒绝。40美元不满足,因此我们不拒绝原假设,认为这是A袋,并要求换成另一个袋子。
- 根据P值方法:
- 我们预先设定 α = 10%。
- 计算P值:在原假设(A袋)为真的前提下,抽到40美元或更极端(更大) 金额的概率。查看A袋分布,金额 ≥40美元的代金券有4张(40, 50, 60, 1000)。因此,P值 = 4/20 = 20%。
- 比较:P值 (20%) > α (10%)。
- 决策:不拒绝原假设。
两种方法得出了相同的结论。P值20%意味着当前数据(40美元)与原假设(A袋)是相对兼容的,并没有足够“极端”到让我们推翻它。
不同观测值下的P值决策
让我们做一些“如果…会怎样”的分析,看看不同数据如何影响P值和决策。
情况一:如果抽到60美元
- P值 = P(在原假设下得到 ≥60美元) = 1/20 = 5%。
- 比较:P值 (5%) < α (10%)。
- 决策:拒绝原假设。
情况二:如果抽到50美元
- P值 = P(在原假设下得到 ≥50美元) = 2/20 = 10%。
- 比较:P值 (10%) = α (10%)。
- 决策:拒绝原假设(刚好有足够证据)。
情况三:如果抽到30美元
- P值 = P(在原假设下得到 ≥30美元) = 6/20 = 30%。
- 比较:P值 (30%) > α (10%)。
- 决策:不拒绝原假设。
总结
通过A袋和B袋的例子,我们一起学习了假设检验的基本框架:

- 陈述竞争假设:明确原假设 (H₀) 和备择假设 (H₁)。
- 设定显著性水平 (α):预先确定你愿意承担的第一类错误风险。
- 收集数据并计算P值:P值衡量了当前数据与原假设的兼容性。
- 做出决策:如果 P值 ≤ α,则拒绝原假设;否则,不拒绝原假设。
我们还了解了决策中可能犯的两种错误:
- 第一类错误 (Type I Error):拒真,概率为 α。
- 第二类错误 (Type II Error):存伪,概率为 β。
P值方法是科学研究中报告结果和判断显著性的常用方式。随着后续课程的深入,这些术语和概念将变得更加清晰易懂。
38:统计学术语与符号规范 📚

在本节课中,我们将学习统计学中常用的术语与符号规范。理解这些规范对于阅读教材、理解统计输出以及进行有效沟通至关重要。虽然不同教材或教授可能使用略有差异的符号,但核心概念是相通的。我们将介绍一些关键符号及其含义,并解释如何在不同语境下使用它们。
统计符号的多样性
上一节我们提到了统计符号的重要性。本节中我们来看看,即使是基础概念,其表示方法也可能存在不同观点。
统计符号和术语很重要,但有时也可能让人困惑。有些符号相当通用,但另一些则不那么标准化。我们想与大家分享一些统计符号和术语,这些内容在后续课程材料中会更多地出现。
我设计了一些关于如何表示不同统计概念及术语的“二选一”问题。我将这些问题发给了课程开发团队,以便他们投票选择。
我先提了几个关于冰淇淋和体操动作的有趣问题。第一个问题是:如果必须选择一种冰淇淋口味,你会选香草味还是巧克力味?结果我们的团队成员平分秋色。我站在香草味一边,尽管我喜欢在香草冰淇淋上撒点巧克力糖果来提升风味。
第二个问题与体操动作有关,这与我们将在一些示例中看到的侧手翻数据集相呼应。如果此刻必须表演一个前滚翻(或我称之为“翻筋斗”)或侧手翻,你会选择哪一个?询问团队成员后,我们发现更多人喜欢前滚翻胜过侧手翻。我站在侧手翻一边,有时当我的课堂学生在复习题上表现非常好时,我会为他们表演一个侧手翻。
均值的表示方法
现在,让我们转向一些更统计学的概念。首先,当我们谈论想要了解总体均值响应时,如果我们有一个感兴趣的总体且响应是定量数据,我们通常用希腊字母 μ 来表示真实的均值响应。
大多数时候,我们可能不知道这个量,因为我们没有整个总体的全部数据,因此最终不得不抽取样本。那么问题来了,我们应该如何表示这个样本均值——这个总体参数的统计量或估计值?
有些人认为,对于任何参数,只需在其上方加一个“帽子”符号,就得到了它的估计值。因此,当询问我们的团队成员,表示样本均值的首选符号是什么时,是 μ̂ 还是 x̄?70%的人选择了 x̄,这是你在统计计算器和一些软件中可能看到的符号。30%的人则认为,只要谈论参数的估计值,就给它加上帽子。
标准差的表示与一个有趣的故事
如果我们转向变异性方面。现在我们有一个感兴趣的总体,响应是定量数据。当我们谈论该总体中响应的变异性或标准差时,经典做法是使用希腊符号 σ 来表示该标准差。
在讨论表示这个总体标准差估计值的不同方法之前,有一个由布雷迪·韦斯特分享的关于 σ 的小故事要告诉大家。
我想分享一个几年前密歇根大学统计学课上的小故事。这是一门关于抽样的课程,抽样是我们在第一门课和本课程中学到的内容。这位统计学教授经常书写希腊符号或希腊字母 σ,并用 σ 来指代标准差。我们引入了感兴趣变量数值标准差的概念,这位教授就像我们在这里看到的那样使用 σ 来指代标准差。但这是一门入门课程,很多学生以前没有见过用希腊符号表示统计量,所以学生们只是接受了教授的说法,课程继续进行。
关于 σ 的一点是,不同的教授,甚至不同的手稿、不同的教员,σ 符号的写法可能不同。这是一种写法,也是我通常的写法。这是另一种写法,我看到有些教员甚至一些教材可能在 σ 的尾部用了更多的曲线,所以你会看到这种写法有点弯曲,但仍然指代相同的东西,通常指代感兴趣变量数值的标准差。
有些教员在板书上书写时,或者在手稿中,可能会把 σ 符号弯曲得更多一点,所以你看这个真的有点倾斜了,但教员可能仍然打算用它来表示标准差或 σ。
结果在这门统计学课上,授课的教员倾向于这样写 σ。每当这位教员在黑板上写 σ 时,他指的是感兴趣变量数值的标准差。但班上有一个学生整个学期都对这到底是什么意思感到怀疑,在课堂上从未真正说过什么,只是随大流。课程结束后,这个学生来到教授的办公室拜访,说:“教授,您在课堂上讲解所有例子并在黑板上写标准差时,我真的很困惑这个概念。”学生说:“教授,为什么您总是把标准差设为6?”
原来,学生没有认出教授使用的是希腊符号 σ,但由于教授在黑板上书写的方式(可能看起来像这样),学生以为每次黑板上出现标准差时,教授只是在写数字6,并假设标准差等于6。所以整个学期,学生都假设任何感兴趣变量的标准差都等于6。
这在统计学中很大程度上取决于符号的含义。我们正在讨论解释不同符号的不同方式,以及它们如何可能指代相同的事物。但无论何时使用符号,无论何时使用希腊符号或其他符号来指代这类概念,都必须非常清楚这些符号的含义,并确保你的听众和阅读你作品的人知道,如果你这样书写,你所说的 σ 是什么意思。这只是一个关于不同的人如何以不同的方式看待符号,以及不同的符号如何可能用来指代同一事物的有趣小故事。但通常,当你看到 σ 时,它指的是感兴趣变量的标准差。
好的,总体标准差是 σ,不是6,是 σ。
标准差估计值的表示
如果我们要估计那个总体标准差,首选是什么?是给它加上帽子,用 σ̂,还是用 S 表示样本标准差?
我们有一些人在均值问题上站在 x̄ 一边,现在则说,让我们给它加上帽子吧,用 σ̂ 来表示估计值或统计量,而不是用 S。然而,S 是你在计算器和一些计算机输出中经常看到的。
比例的表示
让我们转向比例。现在我们的响应不是定量数据。我们谈论的是均值响应,但现在是一个分类结果。我们可能想了解我们总体中回答“是”的真实比例是多少。
然后使用我们的数据来得出那个真实比例的估计值。环顾四周,有几种不同的观点。有些人喜欢用 π 来表示总体比例,然后用 π̂ 表示估计值。所以坚持使用希腊字母这边。
另一些人用 P 表示总体比例,仍然在上面加个帽子来表示统计量或估计值。
对我们的团队成员进行投票后,绝大多数人使用 P 和 P̂ 符号来表示总体中回答“是”的真实比例,与基于某些数据的估计值相对。你实际上会在即将到来的材料中很快看到 P 和 P̂。
置信区间与乘数
让我们继续讨论置信区间的概念,这将是我们第一个要更详细研究的推断技术。
我们在前面的介绍中讨论过,它是你的最佳猜测,加上或减去一个误差幅度,我们向两边延伸以形成这个参数的合理值区间。
那个误差幅度由两个主要部分组成:一个乘数,一个反映我们对该过程希望有多自信的数字;以及我们统计量抽样变异性的某种度量。
让我们关注那个观点,那个“自信”的概念。你可能记得,我们通常喜欢使用95%的置信水平。
当我们讨论经验法则时,向两边延伸一个、两个标准差大约能给我们中间95%的区域。
因此,当询问我们的团队成员,在95%置信区间中使用的乘数时,你是用2,还是用那个能精确产生中间95%的确切值1.96?1.96还是2?
有些人喜欢用2,另一些人则说,我们就用1.96吧,它成了一个印在你脑海里的数字,在我们即将到来的材料中构建95%置信区间时,你会看到1.96被用作我们的乘数。
统计量的变异性:术语辨析
现在让我们转向误差幅度内的另一个概念,即我们统计量的变异性概念。
你可能记得,统计量因为基于数据,所以会从一个样本到下一个样本发生变化。如果你重复相同的过程,你可能会得到那个估计值(那个统计量)的不同值。所以,你的统计量有一个可能值的分布,而这个分布的宽度反映了该统计量的变异性。
现在我们要讨论一点术语:我们如何称呼那个真实的变异性度量?然后,我们给那个变异性的估计值起什么名字?因为通常我们最终在误差幅度中使用的是基于我们数据的这个变异性的估计值。
关于这一点,大致有两种阵营。有些人说,既然我们现在谈论的是不同事物的变异性(一个统计量,而不是响应的单个值,而是一个统计量,是所有那些响应的汇总),那么现在就叫它那个统计量的标准差,称之为该统计量的标准误。
然后,由于你经常需要填入你对它的最佳猜测,你对它的估计,就称之为估计标准误。另一方面,我们有些人说,嗯,你谈论的只是你统计量的标准差,那只是现在变化的东西。所以就叫它你统计量的标准差,并给那个估计值起名为标准误。
所以你可以看到这可能有点令人困惑:我们统计量的标准误是指真实的变异性,还是代表该统计量的估计变异性?
对我们的课程开发团队成员进行了投票。我们大多数人站在“标准差”然后“标准误”表示估计值这一边。
但我们也引发了一些很好的讨论,并决定为本课程提出并使用第一种方法:统计量的标准误现在代表这种概念(一个估计量或统计量)中的变异性。然后,当你使用你的数据代入那个标准误时,你称之为估计标准误。
这就是我们将在本课程中使用的约定。

总结与建议
所以你可以看到,并非所有人都同意使用什么符号和术语。但只要我们提供我们所使用的定义,并且在这些定义上保持一致,我们就没有问题。事实上,我们已经为你们提供了一个很好的总结,列出了你们在即将到来的课程中会看到的一些符号和术语,以便你们在需要时参考。
当然,这些术语和符号很有帮助,因为它们能让我们在解释如何进行一些统计分析时更有效率,也可能在理解我们可能看到的一些统计输出或一些更技术性的报告时更有效率。
然而,我们也将关注文字。我们将讨论如何书写解释,这将是我们在本课程中讨论的更重要的特点之一。因此,当你撰写结果总结时,写“样本均值”是可以的,而不是使用 x̄ 或 μ̂,无论你偏好什么符号。
再次强调,我们为你提供了一些在本课程中你将使用的常见符号和术语的总结,所以不会太难。我们可以处理一点符号和术语,因为它将帮助我们未来的学习之旅。
本节课总结
在本节课中,我们一起学习了统计学中关键的术语与符号规范。我们探讨了均值(μ vs. x̄)、标准差(σ vs. S vs. σ̂)和比例(π vs. P)的不同表示方法,理解了95%置信区间常用乘数1.96的来源,并重点辨析了“标准差”与“标准误”这两个核心概念的区别与联系(统计量的标准差其估计值称为估计标准误)。记住,清晰的定义和一致的使用是有效沟通的关键。在后续课程中,我们将继续运用这些规范来理解和表达统计概念。
39:Python统计生态再探 🐍📊

在本节课中,我们将要学习Python用于数据分析的生态系统概览,了解其核心库及其在数据处理、可视化和建模中的作用。

大家好,我是Kirby Shedon,密歇根大学的统计学教授。本课程将使用的编程语言是Python。
本次内容将简要介绍可用于数据分析的Python工具生态。
Python自1991年诞生以来已存在很长时间。它被认为易于学习且广受欢迎,因为其代码易于阅读,并且不使用大量晦涩的语法。
Python还拥有一个庞大的标准库,使得编写简短脚本来完成许多常见任务变得容易。
与R、Matlab和SAS等特定领域语言不同,Python是一种通用语言,并非专门为数据分析而设计。
然而,通过将Python与一些非常强大的库结合使用,Python可以成为分析数据的理想环境。
虽然Python易于学习,但其速度并不特别快,而在进行数据分析时,速度可能是一个重要的考量因素。
为了解决这个问题,用于数据分析的Python库实际上是用C语言编写的,但可以通过Python调用。Python的普通用户可以在不了解任何C语言的情况下使用这些库,并可以利用这些高度优化库的速度。
本课程将使用的库是由独立的程序员团队在过去25年中开发的,他们大多来自开源社区。这些库涵盖了数据管理、数值计算、绘图和统计建模等多个领域。
这些库相当成熟和稳定,可以信赖其在研究和工业工作中产生准确且有意义的成果。
本课程将使用的库列在本幻灯片上。前三个库NumPy、SciPy和Matplotlib提供了基础。这些库会被你将使用的其他库调用,但通常你不会在自己的代码中直接使用这些库。
蓝色列出的库是你将在本课程所有工作中直接使用的库。
具体来说,Seaborn是一个用于图形和数据可视化的高级库。
Pandas是一个用于数据操作和管理的强大库。
Statsmodels提供了广泛的统计建模工具。
最后,我们在此列出了另一个名为Scikit-learn的库。这是在本课程之外你可能想要考虑的众多库之一。Scikit-learn提供了许多用于机器学习和预测分析的工具。


在整个课程中,你将看到Python如何用于数据分析的示例。
我们将详细讨论此处提到的核心Python语言及其相关库。
通过在Jupyter Notebook中使用这些工具,你将能够专注于语言和工具本身,而无需担心安装和配置问题。
本节课中我们一起学习了Python数据分析生态系统的核心组成部分,包括NumPy、SciPy、Matplotlib等基础库,以及Seaborn、Pandas、Statsmodels等直接应用库。理解这些工具的角色和关系,是高效使用Python进行统计分析和数据科学工作的第一步。
40:基于置信度的总体比例估计 📊

概述
在本节课中,我们将学习如何为一个总体比例计算置信区间。我们将回顾置信区间的基本概念,并通过一个具体实例,一步步演示如何计算和解释一个95%置信区间。
回顾置信区间
上一节我们介绍了置信区间的概念。本节中我们来看看如何具体计算它。
一个置信区间通常由两部分构成:最佳估计值(点估计)加减误差幅度。
其通用公式可以表示为:
置信区间 = 最佳估计值 ± 误差幅度
对于总体比例的情况:
- 最佳估计值 是我们无偏的点估计,称为样本比例 \(\hat{p}\)。
- 误差幅度 定义为“几个”估计标准误。这里的“几个”是一个基于置信水平的乘数。
实例背景:儿童安全座椅使用情况
为了应用这些概念,我们来看一个来自密歇根大学C.S. Mott儿童医院的全国性调查实例。该调查关注儿童健康相关问题。
以下是调查背景:
Mott医院询问了“有多大比例的家长报告他们在与幼儿的所有出行中都使用汽车安全座椅”。
在进行统计推断前,我们首先需要明确两个要素:
- 研究总体:所有拥有幼儿的家长。
- 感兴趣的参数:总体比例,我们用小写字母 \(p\) 表示。
基于此,我们的目标是:为“报告在与幼儿的所有出行中都使用汽车安全座椅的家长”的总体比例,构建一个95%的置信区间。
Mott医院进行了这项调查,他们抽样了659名拥有幼儿的家长,并询问是否在与幼儿的所有出行中都使用安全座椅。其中,有540名家长回答“是”。
计算置信区间
现在,我们回到置信区间的基本公式:最佳估计值 ± 误差幅度。这是计算任何置信区间的起点。
第一步:计算最佳估计值(\(\hat{p}\))
首先,我们需要计算最佳估计值,即样本比例 \(\hat{p}\)。
计算样本比例的公式很简单:
\(\hat{p} = \frac{x}{n}\)
其中,\(x\) 代表回答“是”的数量,\(n\) 代表样本总量。
将我们的数据代入公式:
\(\hat{p} = \frac{540}{659} \approx 0.85\)
因此,我们的最佳估计值 \(\hat{p}\) 为 0.85(或85%)。
第二步:计算误差幅度
现在我们有了 \(\hat{p}\),接下来需要计算公式中“±”右侧的误差幅度。
误差幅度 = 几个 × 估计标准误
- “几个”(乘数):因为我们构建的是95%置信区间,这个乘数通常为 1.96(也有人使用2,依个人偏好而定)。95%的置信水平对应5%的显著性水平,这在后续学习中会很有用。
- 估计标准误:对于单个比例,其估计标准误的计算公式为:
\(SE_{\hat{p}} = \sqrt{\frac{\hat{p}(1 - \hat{p})}{n}}\)
第三步:代入计算
现在,我们将所有已知值代入完整的置信区间公式:
\(\hat{p} \pm \text{乘数} \times \sqrt{\frac{\hat{p}(1 - \hat{p})}{n}}\)
具体计算如下:
\(0.85 \pm 1.96 \times \sqrt{\frac{0.85 \times (1 - 0.85)}{659}}\)
计算后,我们得到置信区间为:0.8227 到 0.8773。
解释置信区间
在继续分析之前,我们首先要理解这个置信区间的含义:我们到底计算出了什么?
一个置信区间是我们所关注的参数(此处为总体比例 \(p\))的一个合理取值范围。
因此,我们可以这样解释:
我们有95%的信心认为,在与幼儿的所有出行中都使用汽车安全座椅的家长总体比例,估计在82.27%到87.73%之间。
这个区间(82.27%, 87.73%)是我们认为参数 \(p\) 最可能存在的范围。参数可能在这个区间内,也可能不在,我们无法完全确定。但基于我们的样本和计算方法,我们有95%的置信度认为它很可能在此区间内。
另外需要注意,置信区间的中心始终等于我们的最佳估计值 \(\hat{p}\)(0.85),因为区间正是围绕它构建的。我们只是从中心点加上和减去了误差幅度。
总结
本节课中我们一起学习了如何为总体比例计算置信区间。
我们通过使用最佳估计值 \(\hat{p}\) 和误差幅度,计算了第一个置信区间。这为我们感兴趣的参数提供了一个区间估计。我们利用统计量 \(\hat{p}\) 来推断参数 \(p\) 可能的值。
我们了解到:
- 置信区间的中心总是等于最佳估计值。
- 误差幅度定义为 “几个” × 估计标准误。
- 在单比例的情况下,这个“几个”(乘数)通常被称为 \(z^*\),然后乘以所需的估计标准误即可。


通过本讲的学习,你已经掌握了构建和解释总体比例置信区间的基本方法。
41:置信区间原理详解 📊


在本节课中,我们将深入学习置信区间。我们将探讨如何正确解释置信区间、置信水平的真正含义,以及如何调整置信水平(例如,从95%变为99%)。通过理解这些概念,你将能够更准确地使用统计推断来估计未知的总体参数。
概述
上一节我们介绍了如何构建置信区间。本节中,我们将更深入地探讨如何正确解释置信区间、理解置信水平的含义,以及如何根据需求调整置信水平。
置信区间的解释
首先,我们来看一个背景案例,以便更好地理解上下文。
在一项针对659名幼儿家长的抽样调查中,约有540人(约85%)表示他们在所有出行中都使用儿童安全座椅。根据这些结果,计算出的置信区间大约从82.3%到87.7%。
那么,这个置信区间告诉我们什么?我们应如何解释这个区间?
为了更好地理解,我们首先需要问一个问题:我们为谁构建置信区间?思考一下,我们是为参数还是为统计量构建置信区间?
我们是为参数构建置信区间。在这个例子中,我们可以说这个区间是针对“所有幼儿家长中,报告经常使用儿童安全座椅的总体比例”这一参数的置信区间。
我们使用样本比例来构建这个区间,但我们不称这个区间为“样本比例的置信区间”。它是一个数值范围,旨在帮助我们以较高的置信度估计我们认为的总体比率可能是什么。
以下是两种良好的陈述方式:
- 我们以95%的置信度估计,报告在所有出行中都使用儿童安全座椅的幼儿家长的总体比例介于82.27%到87.73%之间。
- 基于我们对659名幼儿家长的抽样调查,我们有95%的置信度估计,在所有此类家长中,有82.3%到87.7%的人报告他们在所有出行中都使用儿童安全座椅。
这两种陈述都包含了所使用的置信水平(即“以95%的置信度”),并传达了我们是使用数据来估计总体参数(此处是总体比例)。第二种陈述还巧妙地包含了样本量,这是理解研究结果的一个非常重要的特征,但常常被忽略。
因此,我们得到了一个合理的数值范围,用于估计可能的总体比例。例如,83%落在这个区间内,因此它可能是总体比率的一个合理值,我们的数据无法反驳它。86%也可能是真实比率。基于我们从目标总体中抽取的一个样本,我们得到了该参数的一系列合理值。
理解置信水平
我们如何更好地理解“以95%的置信度”这个短语的真正含义?
让我们思考一下:我们得到的这个从82%到87%的区间,是否包含了样本中报告在所有出行中都使用儿童安全座椅的家长比例?当然包含。我们以最佳估计值(85%)为中心构建了区间,并向两边扩展了一个误差范围。因此,每个区间都会包含相应的样本统计量,最佳估计值正好在中间。
但下一个问题呢:我们的置信区间是否包含了“所有幼儿家长中,报告在所有出行中都使用儿童安全座椅的总体比例”?我们必须回答:我们不知道。为了能回答“是”或“否”,我必须知道那个总体比例的值。总体比例是一个固定但未知的值。我不知道它是什么,这正是我们设计研究、收集代表性数据以估计其值的原因。因此,我无法告诉你这个已经计算好的特定区间是否包含了真实比例。
这引出了一个常见的错误解释:我们不应将置信水平理解为“总体比例在我们刚刚构建的区间内的概率为95%”。区间已经计算完成,它是固定的。总体真实比率也是一个固定数字。它要么落在这两个值之间,要么不在。从某种意义上说,概率要么是1,要么是0,我们只是不知道是哪一个。
置信水平指的是我们对构建区间所使用的统计过程的信心,而不是区间构建完成后事件发生的概率。
让我们通过一个模拟来理解这一点。假设有一个总体,我们知道其中回答“是”的总体比例是50%(通常这是未知的,但我们需要知道正确答案以评估过程的效果)。
我们从该总体中抽取一个大小为25的样本,计算样本比例作为最佳估计,并围绕它构建一个区间。我们重复这个过程很多次,比如100次。每次从同一总体抽取相同大小的样本,并创建一个置信区间。
我们可能会看到:第一个区间(图中最顶部的线)显示,估计值略低于50%的真实比率,但当我们围绕最佳估计值向两边扩展时,区间仍然包含了0.5的真实比例,因此它被标记为蓝色,是一个“好”区间。下一个区间也包含了真实比例。再往下,我们看到另一个不同颜色的区间,它来自一个估计值过高的样本,以至于其周围的区间未能捕获50%的真实比率。
在这100个生成的区间中,有96个包含了真实比例,4个没有。每个特定的区间要么包含,要么不包含。如果我们再重复100次,结果会因样本不同而变化,但长期来看,我们期望大约95%的区间会包含真实参数。
因此,这个95%的置信水平是我们长期期望的结果:使用我们所采用的这种方法构建的区间中,预计约有95%会包含真实值。这就是我们对所构建的那个区间充满信心的原因。我们只进行一次抽样(如果可能,确保其代表性且样本量足够大),生成我们的区间。我们对该结果有信心,因为这个过程保证了使用该方法构建的区间中,预计有95%会包含真实值。
调整置信水平
最后,我们来看看如何改变置信水平。如果你希望有99%的置信度,或者可能只需要90%的置信度,该怎么办?
如果你还记得我们构建区间的方式:最佳估计值 ± 若干倍估计标准误。其中的“若干倍”这个乘数反映了你的置信度。
因此,如果你想更有信心,就需要调整所使用的乘数。对于95%的置信度,乘数大约是1.96或2。如果我们想达到99%的置信度,乘数可能需要增加到大约2.576。
公式:置信区间 = 样本统计量 ± (临界值 × 标准误)
我们希望越有信心,乘数就越大,区间也就越宽。这是一种权衡:不需要那么高的置信度时,你的区间可以更精确(更窄);希望更有信心时,你需要更宽的“网”来确保区间有更高的可能性包含真实值。
回到幼儿家长的案例,我们会看到90%置信水平的区间误差范围更小。而随着我们变得更有信心(如99%),区间确实变得更宽。下图展示了基于相同数据生成的90%置信区间和99%置信区间,99%的置信区间通常比对应的90%置信区间更宽。


总结
本节课中,我们一起学习了如何更好地解释置信区间,更深入地理解了置信水平的真正含义,并了解了如何根据需求调整所需的置信水平。记住,置信区间提供了对未知总体参数的一个估计范围,而置信水平反映了构建该区间的方法的长期可靠性。
42:置信区间理论可视化演示 🎯


在本节课中,我们将学习如何使用“Seeing Theory”交互式应用来理解置信区间的核心概念。该应用通过可视化演示,帮助我们直观地掌握置信区间的工作原理及其影响因素。
应用简介与访问
大家好,欢迎回来。我是Mark。今天我将向大家展示如何使用“Seeing Theory”应用。该应用由布朗大学的本科生Daniel Coonan创建,旨在通过交互式可视化让统计学更易于理解。本节课我们将专注于他创建的关于置信区间的交互式可视化。
要开始使用,可以点击提供的链接,或者在网页浏览器中输入“Seeing Theory Brown University”进行访问。无论使用哪种方式,您都应该看到一个类似这样的页面:Student.brown.edu/seeingtheory。
到达该页面后,请点击左上角的“Chapters”选项。为了找到我们需要的章节,请点击“Frequentist Inference”。您可以在页面顶部附近看到列出的六个章节,请点击其中的第四个。

进入该章节后,请点击中间白色的“Interval Estimation”方框。

点击后,您将进入我们所需的应用界面。
界面与初始设置
在界面左侧,有几个我们将在今天课程中调整的输入参数。右侧则是交互式可视化的展示区域。
首先,我们需要选择一个用于抽样的分布。应用列出了几个不同的分布,我们将从正态分布开始。现在您可以在右侧看到一个正态分布图,其总体参数位于中心,由一条虚线标示。
接下来,我们可以为将要创建的置信区间选择样本量和置信水平。然后我们就可以开始抽样了。在第一次尝试中,我们将保持样本量为5,置信水平为90%。
理解置信水平
那么,90%的置信水平意味着什么?它意味着,如果我们从同一总体中重复抽取相同大小的样本(此处样本量为5),那么在所有生成的区间中,我们预计有90%的区间会包含我们想要估计的真实总体参数。
让我们开始抽样。您可以看到,我们正在从上面的分布中抽取大小为5的样本。这些样本会落下并形成一个区间,区间中心是我们的最佳估计值,加减一定的误差范围。
应用会自动为那些包含或覆盖了真实总体参数的区间标上绿色,而不包含的则标为红色。在左侧,您可以看到一个清晰的条形图,它显示了当前已生成的区间中,包含与不包含真实参数的百分比。
再次强调,随着时间的推移,由于我们设置了90%的置信水平,我们应该看到这个条形图最终会稳定在大约90%(包含)和10%(不包含)的比例。
探索影响因素
现在,让我们看看改变样本量和置信水平会如何影响这些区间。
首先,让我们改变样本量。将样本量n从5滑动到其最大值30。我们会发现,区间的宽度变得比之前窄得多。
观察这个变化,由于我们没有改变置信水平,我们仍然应该看到条形图的比例大约在90%和10%附近。目前是91%和8%,如果持续观察,长远来看它会稳定在90%和10%左右。
最后,让我们改变置信水平。将滑动条向左移动一些,比如到0.6(即60%)。此时应用操作可能需要一些耐心。好的,现在置信水平是60%。
我们仍然保持样本量为30。但如果我们观察新生成的区间中绿色和红色的比例,现在应该只有大约60%的新区间包含真实的总体参数。
这很好地阐释了置信水平的含义。一个置信区间只是屏幕上移动下来的单个区间。而置信水平则表明,如果您重复抽取相同样本量的样本,从长远来看,我们预计有60%的生成区间会包含真实的总体参数。我们现在看到的情况大致符合这个预期。
自由探索与总结
现在,您可以自由地更改分布类型、样本量或置信水平,自行探索这个应用。但这已经让您对置信区间、置信水平以及影响它们的参数有了很好的理解。


本节课中,我们一起学习了如何使用“Seeing Theory”交互式应用来可视化理解置信区间。我们了解了置信水平(如90%)的长期频率解释,并通过调整样本量(n)和置信水平(如 1 - α)观察了它们对区间宽度和覆盖概率的影响。核心在于,置信区间是一个基于样本的估计范围,而置信水平描述了在重复抽样下,该方法产生包含真实参数区间的长期概率。
43:单总体比例置信区间的前提假设 📊

在本节课中,我们将学习构建单总体比例置信区间所需满足的前提假设。理解这些假设是确保置信区间有效且可靠的关键。
概述
置信区间用于估计总体比例。其中心点是样本比例(点估计),我们在此基础上加减一个误差幅度。这个误差幅度反映了样本估计中预期的变异性。然而,在计算置信区间之前,我们必须验证两个核心前提假设是否成立。
前提假设一:简单随机样本
首先,我们需要确保数据样本是一个简单随机样本。
简单随机样本是指从目标总体中抽取的一个代表性子集。这意味着总体中的每个个体或每个观测值都有同等的概率被选中。获得简单随机样本能确保我们得到总体一个可靠的“缩影”,从而为置信区间提供一个良好的中心点。
为了检查此假设,我们需要分析样本的收集方式,确保其能代表目标总体。在本课程中,我们通常假设样本是简单随机样本。更复杂的抽样设计可以通过加权等技术处理,但本课程主要关注简单随机样本的情况。
前提假设二:足够大的样本量
上一节我们介绍了简单随机样本的重要性。本节中我们来看看第二个关键假设:足够大的样本量。
为什么需要足够大的样本量?因为当样本量足够大时,我们才能用正态曲线来近似样本比例的抽样分布。在计算误差幅度时,我们会使用一个临界z值(z乘数),这个值来源于标准正态分布。
那么,什么是“足够大”呢?对此有多种观点。但无论如何,样本量越大,近似效果越好。随着样本量 n 的增加,抽样分布会越来越接近钟形(正态分布),而这正是我们所需要的。
对于单总体比例的置信区间,我们定义“足够大”为:样本中每种回答结果(通常是“是”和“否”)的数量都至少为10。即,我们需要至少有10个“是”和10个“否”。
用公式表示,若样本量为 n,样本比例为 p̂,则需要满足:
n * p̂ >= 10
且
n * (1 - p̂) >= 10
如何验证假设
以下是验证两个前提假设的步骤:
1. 验证简单随机样本
- 分析数据收集过程。
- 确认抽样方法确保了每个个体被选中的概率均等,且样本能代表目标总体。
2. 验证足够大的样本量
- 计算样本中每种回答类别的数量。
- 确认“是”和“否”(或其它二元结果)的数量都至少为10。
总结
本节课中,我们一起学习了构建单总体比例置信区间前必须检查的两个前提假设:
- 样本是简单随机样本:确保样本对总体具有代表性。
- 样本量足够大:确保每种回答结果至少有10个,从而允许我们使用基于正态分布的临界z值。

只有当这两个条件都满足时,我们构建的置信区间才能有效地估计真实的总体比例。
44:保守估计与样本量考量方法 📊


在本节课中,我们将学习一种更稳健的置信区间构建方法——保守估计法,并探讨如何根据期望的置信区间宽度(边际误差)来反推所需的样本量。
上一节我们介绍了置信区间的基本概念,它由最佳估计值加减边际误差构成。本节中,我们将看看如何通过一种更“安全”的方法来构建置信区间,并利用它来规划研究所需的样本量。
回顾:置信区间公式
置信区间通常表示为:最佳估计值 ± 边际误差。
其中,边际误差由两部分相乘得到:一个乘数(通常称为Z值)和最佳估计值的估计标准误。
对于一个比例的95%置信区间,其公式为:
CI = p̂ ± 1.96 * SE(p̂)
其中,估计标准误 SE(p̂) 的计算公式为:
SE(p̂) = sqrt( p̂ * (1 - p̂) / n )
引入保守估计法
我们之前使用的估计标准误依赖于样本比例 p̂。但有时我们可能会担心 p̂ 不够准确,或者样本可能存在偏差。
为了解决这个问题,统计学家提出了一种保守估计法。其核心思想是:在计算标准误时,使用能使标准误最大化的 p̂ 值,即 p̂ = 0.5。
将 p̂ = 0.5 代入标准误公式:
SE_conservative = sqrt( 0.5 * 0.5 / n ) = 1 / (2 * sqrt(n))
使用这个保守标准误构建的置信区间会更宽,这意味着我们对参数真实值所在范围的估计更加“安全”和谨慎。
保守置信区间的应用
我们回到密歇根儿童医院(Mott Children‘s Hospital)的汽车安全座椅调查案例。
- 样本量
n = 659 - 样本比例
p̂ = 0.85(540/659)
使用保守标准误,并为了计算简便,在95%置信水平下使用乘数 2 代替 1.96,我们得到新的边际误差公式:
边际误差 = 2 * [1 / (2 * sqrt(n))] = 1 / sqrt(n)
因此,保守的95%置信区间简化为:
CI_conservative = p̂ ± 1 / sqrt(n)
对于本例:
边际误差 = 1 / sqrt(659) ≈ 0.039 (约4%)
CI = 0.85 ± 0.039 = (0.811, 0.889)
可以看到,这个区间 (0.811, 0.889) 比之前用常规方法计算的 (0.823, 0.877) 更宽,体现了“保守”的特性。
基于边际误差确定样本量
保守估计法的一个巨大优势是,边际误差只依赖于置信水平(决定Z值)和样本量。这使我们能够反过来,根据期望的边际误差来计算所需的样本量。
假设我们希望在95%置信水平下,获得一个边际误差仅为3%的保守置信区间。
根据公式 边际误差 = 1 / sqrt(n),我们可以解出 n:
n = (1 / 边际误差)^2
将边际误差 MOE = 0.03 代入:
n = (1 / 0.03)^2 ≈ 1111.11
由于样本量必须是整数,并且更大的样本量会带来更小的边际误差(更精确),我们总是向上取整。因此,需要至少 1112 个样本才能保证边际误差不超过3%。
不同置信水平下的样本量计算
如果我们想要更高的置信度,例如99%,同时仍保持3%的边际误差,该如何计算样本量?
这时我们需要使用完整的保守边际误差公式:
边际误差 = z* / (2 * sqrt(n))
其中 z* 是99%置信水平对应的Z值(约为2.576)。
解出 n:
n = (z* / (2 * 边际误差))^2
代入数值计算:
n = (2.576 / (2 * 0.03))^2 ≈ 1843.27
同样,向上取整,得到所需样本量 n ≥ 1844。
以下是不同场景下所需样本量的快速参考:
- 目标:95%置信水平,3%边际误差
- 所需样本量:
n ≥ 1112
- 所需样本量:
- 目标:99%置信水平,3%边际误差
- 所需样本量:
n ≥ 1844
- 所需样本量:
- 目标:95%置信水平,4%边际误差(如原始案例)
- 所需样本量:
n ≥ 625(计算:(1/0.04)^2 = 625)
- 所需样本量:
可以看到,要求更高的置信度或更小的边际误差,都需要显著增加样本量。
总结
本节课中我们一起学习了保守估计法与样本量规划。

- 保守估计法:为了应对样本估计可能不准确的情况,我们在计算标准误时使用
p̂ = 0.5,从而得到最宽(最保守)的置信区间。其核心公式简化为CI = p̂ ± 1 / sqrt(n)(针对95%置信水平)。 - 样本量考量:利用保守估计法中边际误差与样本量的明确关系,我们可以根据研究事先设定的置信水平和可接受的边际误差,反推出需要收集的最小样本量。计算公式为
n = (z* / (2 * MOE))^2,并记住结果必须向上取整。
这种方法在临床试验、社会调查等需要提前规划资源的研究中非常实用,确保了研究结果能达到预期的精度。
45:双总体比例差异的置信估计 📊

在本节课中,我们将学习如何为两个总体比例之间的差异构建置信区间。我们将通过一个关于儿童游泳课程的调查案例,来理解并应用这一统计方法。
概述
本节课的核心目标是:使用样本数据,估计两个独立总体比例之间的差异,并构建一个置信区间。我们将以一个具体的民意调查为例,探讨白人儿童与黑人儿童的父母报告孩子上过游泳课程的比例差异。
研究背景与参数定义
上一节我们介绍了单总体比例的置信区间。本节中,我们来看看如何处理两个总体的情况。
研究问题源自CS Mott儿童医院的一项全国性民意调查。该调查询问了关于儿童水上安全和游泳课程的情况。
我们的具体研究问题是:在6至18岁儿童的父母中,报告孩子上过游泳课程的白人儿童父母与黑人儿童父母,其总体比例差异是多少?
我们关注两个总体:
- 总体1:所有6至18岁白人儿童的父母。
- 总体2:所有6至18岁黑人儿童的父母。
因此,我们感兴趣的参数是两个总体比例之差。用符号表示为:
参数 = P₁ - P₂
在本例中,我们指定:
- P₁:白人儿童父母中报告孩子上过游泳课程的总体比例。
- P₂:黑人儿童父母中报告孩子上过游泳课程的总体比例。
我们的目标是:为P₁ - P₂构建一个95%的置信区间。
样本数据
以下是调查获得的样本结果:
- 我们抽取了 988名 白人儿童父母的样本,其中 543人 报告孩子上过游泳课程。
- 我们抽取了 247名 黑人儿童父母的样本,其中 91人 报告孩子上过游泳课程。
仅凭这些数字很难直观回答我们的研究问题。因此,我们需要借助置信区间。
置信区间公式推导
回忆置信区间的基本结构:最佳估计值 ± 边际误差。
对于单比例,我们知道如何计算。对于两个比例之差,我们沿用此结构,但需进行调整。
首先,考虑最佳估计值。我们的参数是P₁ - P₂,很自然地用样本比例之差来估计它:
最佳估计值 = P̂₁ - P̂₂
其次,考虑边际误差。在95%置信水平下,边际误差是“几个”标准误。我们使用1.96作为这个“几个”值。
因此,双比例差异的置信区间公式为:
置信区间 = (P̂₁ - P̂₂) ± 1.96 × SE(P̂₁ - P̂₂)
其中,标准误SE(P̂₁ - P̂₂) 的计算公式如下:
SE(P̂₁ - P̂₂) = √[ P̂₁(1 - P̂₁)/n₁ + P̂₂(1 - P̂₂)/n₂ ]
这个公式看起来很像单比例标准误公式的扩展,只是将两组的信息相加后再取平方根。
计算置信区间
现在,我们将使用样本数据来计算这个置信区间。
步骤1:计算样本比例P̂
- P̂₁ = 543 / 988 ≈ 0.55 (55%)
- P̂₂ = 91 / 247 ≈ 0.37 (37%)
步骤2:计算最佳估计值(点估计)
- 点估计 = P̂₁ - P̂₂ = 0.55 - 0.37 = 0.18 (18%)
这意味着,在样本中,白人儿童父母报告孩子上过游泳课程的比例,比黑人儿童父母高出约18个百分点。
步骤3:计算标准误
将数值代入标准误公式:
SE = √[ (0.55×0.45/988) + (0.37×0.63/247) ]
SE ≈ √[ 0.0002505 + 0.0009437 ]
SE ≈ √0.0011942 ≈ 0.0346 (3.46%)
步骤4:计算边际误差并确定置信区间
- 边际误差 = 1.96 × 0.0346 ≈ 0.0678 (6.78%)
- 置信区间下限 = 0.18 - 0.0678 ≈ 0.1122 (11.22%)
- 置信区间上限 = 0.18 + 0.0678 ≈ 0.2478 (24.78%)
因此,P₁ - P₂的95%置信区间约为 (0.11, 0.25) 或 (11%, 25%)。
结果解读
以下是置信区间的解读方法:
一个置信区间是我们的参数(此处为P₁ - P₂)的一个合理取值范围。
具体到本例,我们可以这样解释:
我们有95%的信心认为,白人儿童父母中孩子上过游泳课程的总体比例,比黑人儿童父母中的总体比例高出大约11%到25%。

这意味着,真实的总体差异很可能落在这个区间内。点估计值18%是我们的最佳猜测,但考虑到抽样误差,真实值可能在11%到25%之间的任何位置。
总结
本节课中我们一起学习了:
- 定义了参数:双总体比例之差 P₁ - P₂。
- 理解了公式:置信区间 = (P̂₁ - P̂₂) ± z* × √[ P̂₁(1-P̂₁)/n₁ + P̂₂(1-P̂₂)/n₂ ]。
- 进行了计算:通过一个关于游泳课程的调查案例,我们计算出了比例差异的点估计(18%)和95%置信区间(11%, 25%)。
- 学会了解读:我们能够将这个统计结果转化为关于研究问题的、有意义的陈述。
在下一节课中,我们将更深入地探讨如何解读置信区间,以及在计算此类置信区间前需要检查哪些基本假设。
46:双总体比例区间的解释与假设条件 📊

在本节课中,我们将学习如何解释两个总体比例之差的置信区间,并了解在计算该区间前需要检查哪些假设条件。
上一节我们介绍了如何计算两个总体比例之差的置信区间。本节中,我们来看看如何解释这个区间,并讨论在计算前必须验证的关键假设。
置信区间的回顾
首先,让我们回顾一下置信区间的定义。
该置信区间是我们参数合理取值的范围。
我们以95%的置信度发现,白人儿童家长中上过游泳课的比例,比黑人儿童家长中上过游泳课的比例高出约11%到约25%。
如何解释置信区间
现在我们来思考一下。这两个总体比例似乎存在差异吗?
为了理解两个总体比例是否存在差异,我们可以观察我们的参数。当我们查看差异的区间时,可以考虑这两个参数之间是否存在差异。
如果两个参数相等,意味着我们两个参数的差为0,即 p1 - p2 = 0。
如果这两个参数不相等,则意味着差值 p1 - p2 ≠ 0。
由于我们的置信区间是参数合理取值的范围,我们需要查看0是否在这个合理取值范围内。
如果0在我们的置信区间内似乎是合理的,那就意味着两个参数可能相等,即两个总体比例之间确实没有差异。
如果0不在该置信区间内,则表明我们的参数很可能不相等,它们看起来并不相似或相同。这表明我们正在研究的两个总体比例可能存在差异。
计算前的假设条件
在计算置信区间之前,还需要检查一些假设。我们在上一节视频中跳过了这些,是为了先展示区间的计算方法。但在实际计算区间之前,检查这些假设非常重要。
以下是计算前需要检查的假设条件:
首先,我们需要假设我们有两个独立的随机样本。这实际上取决于抽样方案,因此需要事先告知您是否已经做到这一点。一旦您获得了样本信息,就没有直接的方法来检查这一点。
其次,我们还需要足够大的样本量,以确保我们估计量的分布是正态的。具体来说,这意味着我们需要满足以下四个条件:
- n1 * p̂1 ≥ 10
- n1 * (1 - p̂1) ≥ 10
- n2 * p̂2 ≥ 10
- n2 * (1 - p̂2) ≥ 10

用更易懂的话来说,这意味着在每个样本中,我们至少需要有10个“是”(成功)和10个“否”(失败)。您可以通过将数字代入上述四个公式来计算验证,也可以直接检查每个样本中是否至少有10个“是”和10个“否”。
总结
本节课中我们一起学习了如何解释两个总体比例之差的置信区间,以及计算前必须验证的假设条件。
我们回顾了上一节中计算置信区间的方法。在我们的例子中,置信区间表明白人儿童中上过游泳课的比例,比黑人儿童中上过游泳课的比例高出约11%到25%。
我们还讨论了如何解释这个置信区间:在本案例中,白人儿童上过游泳课的总体比例确实似乎高于黑人儿童。
47:总体均值的置信估计 📊

在本节课中,我们将学习如何对总体均值进行置信估计。我们将使用一个关于侧手翻距离的实际数据集,通过构建95%置信区间来估计成年人的平均侧手翻距离。我们将介绍相关的核心概念、计算公式以及如何解释结果。
数据与研究问题
上一节我们介绍了对分类变量(比例)的置信估计。本节中,我们来看看当响应变量是定量数据(如距离、身高)时,如何估计总体均值。
我们的研究问题是:成年人的平均侧手翻距离(英寸)是多少?
- 总体:所有成年人。
- 参数:总体均值(用希腊字母 μ 表示)。
- 目标:使用样本数据,构建总体均值 μ 的95%置信区间。
我们拥有25名成年人的侧手翻距离测量数据。
数据探索:图形与数值摘要
在进行分析之前,我们首先需要了解数据的基本特征。
以下是数据可视化结果:
- 直方图显示,侧手翻距离大致在70英寸到110英寸以上,分布略呈右偏。
- QQ图进一步证实了分布尾部(低端)略有偏离。
为了进行有效的置信区间估计,我们通常希望总体数据服从正态(钟形)分布。虽然我们的样本分布略有偏斜,但样本量(n=25)已足够大,可以依赖中心极限定理,即样本均值的分布近似正态。
接下来,我们查看数值摘要:
- 样本量 n = 25
- 样本均值 x̄ = 82.48 英寸
- 样本标准差 s = 15.06 英寸
- 最小值:63英寸
- 最大值:115英寸
样本均值82.48英寸是我们对总体均值μ的最佳点估计。
理解样本均值的变异性
我们知道,如果重复抽样,每次得到的样本均值x̄会有所不同。这种变异性由样本均值的抽样分布来描述。
抽样分布有两个关键特征:
- 中心:所有可能样本均值的平均值等于总体均值 μ。这意味着 x̄ 是 μ 的无偏估计。
- 散布:抽样分布的标准差称为标准误,它衡量了样本均值的变异性或精确度。
总体均值的标准误公式为:
标准误 = σ / √n
其中,σ 是总体标准差,n 是样本量。
然而,我们永远无法得知真实的 σ。因此,我们使用样本标准差 s 来估计它,从而得到估计标准误:
估计标准误 = s / √n
构建总体均值的置信区间
置信区间的通用结构是:点估计 ± 边际误差。
对于总体均值:
- 点估计 = 样本均值 x̄
- 边际误差 = t × (s / √n)*
这里出现了一个新元素 t。当我们用 s 估计 σ,且样本量可能不大时,不能再使用之前比例估计中的1.96这个乘数。我们需要使用 t 分布来找到合适的乘数 t。t* 的值取决于我们选择的置信水平(如95%)和自由度,自由度通常为 n - 1。
对于我们的数据(n=25,95%置信水平),自由度 df=24,对应的 t ≈ 2.064*。
现在,我们可以计算置信区间:
- 点估计:x̄ = 82.48
- 估计标准误:s / √n = 15.06 / √25 = 15.06 / 5 = 3.012
- 边际误差:t* × 估计标准误 = 2.064 × 3.012 ≈ 6.22
- 95% 置信区间:82.48 ± 6.22 = (76.26, 88.70) 英寸
结果的解释与说明
计算出置信区间后,正确解释其含义至关重要。
区间解释:
我们可以这样陈述:“我们有95%的信心认为,所有成年人的平均侧手翻距离在76.26英寸到88.70英寸之间。” 这个区间提供了总体均值μ的一个合理取值范围。
置信水平的含义:
“95%置信度”指的是我们使用的方法的可靠性。它意味着,如果我们重复多次抽样(每次抽取25人),并每次都计算一个95%置信区间,那么长期来看,这些区间中将有大约95%会包含真实的总体均值μ。我们当前的区间(76.26, 88.70)只是这众多可能区间中的一个,我们对其包含μ有95%的信心。
前提假设与总结

为了使总体均值的置信区间有效,需要满足以下假设:
- 数据代表性:样本数据应能代表目标总体(可视为随机样本)。
- 正态性:总体响应值(这里是所有成年人的侧手翻距离)的分布模型应是正态(钟形)的。
- 补充说明:如果总体分布不严格正态,但只要样本量足够大(通常 n ≥ 30),根据中心极限定理,样本均值的分布仍会近似正态,从而使置信区间方法依然可靠。我们的样本量(n=25)处于边界,但结合图形观察,方法基本合理。
本节课中我们一起学习了如何估计总体均值。
- 我们使用样本均值 x̄ 作为点估计。
- 我们使用估计标准误 (s/√n) 和来自 t 分布 的乘数 t* 来计算边际误差。
- 我们构建并解释了置信区间,理解了“95%置信度”的含义。
- 我们回顾了该方法有效的关键假设。
置信区间为我们提供了关于总体参数的区间估计,结合了估计的不确定性,是统计推断中一个非常强大的工具。
48:配对数据均值差异估计 📊

在本节课中,我们将学习如何为配对数据估计均值差异。我们将从理解什么是配对数据开始,然后学习如何计算和解释配对数据均值差异的置信区间。
什么是配对数据?🤔
上一节我们介绍了统计推断的基本概念,本节中我们来看看一种特殊的数据类型:配对数据。
配对数据是指两组观测值之间存在某种自然匹配或关联的数据。它们不能被视为独立的样本,因为每个数据点都与另一个数据点成对出现。
以下是配对数据可能出现的几种情况:
- 同一个体的两次测量:例如,测量一个人用药前和用药后的血压。
- 匹配个体的测量:例如,研究双胞胎(如本课案例)、夫妻或根据年龄、性别等特征匹配的个体。
- 相关个体的测量:例如,测量父子或祖孙的身高。
在每种情况下,我们都需要创建一个新的变量:配对内测量值的差异。这样我们就能直接比较两个相关联的观测值。
案例研究:双胞胎教育水平 👯
我们的研究问题是:年长双胞胎和年轻双胞胎自我报告的教育年限的平均差异是多少?
- 总体:所有同卵双胞胎。
- 感兴趣的参数:总体均值差异,记为 μ_D。这里,我们定义差异为 年长双胞胎的教育年限 - 年轻双胞胎的教育年限。
- 目标:为同卵双胞胎自我报告教育年限的均值差异构建一个95%的置信区间。
数据与差异计算 📈
我们首先查看一个数据样本。关键步骤是计算每对双胞胎教育年限的差值(年长 - 年轻)。
以下是数据示例:
| 年长双胞胎教育年限 | 年轻双胞胎教育年限 | 差值 (D) |
|---|---|---|
| 16 | 16 | 0 |
| 18 | 16 | 2 |
| ... | ... | ... |
| 14 | 16 | -2 |
从数据摘要中,我们得到:
- 观测数 (n): 340
- 差值均值 (x̄_D): 0.08 年
- 差值标准差 (s_D): 0.76 年
构建置信区间 🧮
现在,我们来构建均值差异的置信区间。其基本形式与单均值置信区间相同。
置信区间的通用公式为:
最佳估计值 ± 边际误差
对于配对数据的均值差异,具体公式为:
x̄_D ± t × (s_D / √n)*
其中:
- x̄_D 是样本差值均值。
- s_D 是样本差值的标准差。
- n 是配对数量(差值数量)。
- t* 是t分布中与置信水平(如95%)和自由度 (n-1) 对应的临界值。
将我们的数据代入公式:
- x̄_D = 0.08
- s_D = 0.76
- n = 340, 自由度 df = 339, 对于95%置信区间, t* ≈ 1.967
- 标准误 (SE) = s_D / √n = 0.76 / √340 ≈ 0.0412
计算边际误差:
边际误差 = t* × SE = 1.967 × 0.0412 ≈ 0.0810
因此,95%置信区间为:
下限:0.08 - 0.0810 = -0.0010 ≈ 0.00 年
上限:0.08 + 0.0810 = 0.1610 ≈ 0.16 年
(注:视频中计算结果为[0.0025, 0.1652],因中间计算四舍五入略有差异,原理完全一致。)
解释置信区间 💡
我们如何解释这个置信区间 [0.00, 0.16] 年?
我们有95%的信心认为,总体中年长双胞胎比年轻双胞胎自我报告的教育年限的平均差异在0.00年到0.16年之间。
关键点在于:
- 整个区间都是正数。这表明我们确信,平均而言,年长双胞胎的教育年限略高于年轻双胞胎。
- 区间非常接近零。虽然存在差异,但这个差异很小(平均最多多0.16年,约2个月)。
假设检验的视角:零值在区间内吗? ❓
我们常常关心“两组是否有差异?”这个问题。在统计上,这等价于问:总体均值差异 μ_D 是否等于0?
- 如果0包含在置信区间内,则0是一个合理的值,我们没有足够证据表明存在总体均值差异。
- 如果0不包含在置信区间内(如本例),则0不是一个合理的值,我们有证据表明存在总体均值差异。
在我们的案例中,置信区间为[0.00, 0.16]。区间下限正好是0(或根据视频计算为0.0025 > 0),因此0不在区间内部。这为“双胞胎之间的教育水平存在差异”提供了统计证据,尽管差异很小。
需要检查的假设 ✅
在计算此置信区间前,我们需要确保一些条件得到满足:
- 随机样本:我们拥有同卵双胞胎对的随机样本。
- 正态性:差值构成的总体应近似正态分布。我们可以通过差值的直方图来检查。对于大样本(如 n=340),中心极限定理通常能保证样本均值的分布近似正态,因此此条件可以放宽。
- 独立性:每对双胞胎之间的差值应相互独立。这通常由随机抽样来保证。
总结 📝
本节课中我们一起学习了如何处理配对数据:
- 我们将单均值的置信区间方法扩展到了配对数据,核心是创建并分析差值变量 (D)。
- 配对数据主要产生于同一个体的两次测量或匹配个体的测量。
- 我们通过计算差值均值的置信区间来推断总体均值差异。
- 通过检查零是否落在置信区间内,我们可以判断两组是否存在显著的均值差异。在本案例中,零不在区间内,表明双胞胎的教育水平存在微小但显著的差异。

课程名称:密歇根大学《使用Python的统计学》- P48:配对数据均值差异估计
49:独立样本的总体均值差异置信估计 📊

概述
在本节课中,我们将学习如何为两个独立的群体,构建总体均值差异的置信区间估计。我们已经学习过如何为一个总体均值和一个总体比例构建置信区间,现在我们将深入探讨如何比较两个群体及其总体。
研究问题
考虑居住在美国的18至29岁墨西哥裔美国成年人,男性和女性在平均身体质量指数上是否存在显著差异?
首先,我们需要明确我们的总体。这里指定的总体是居住在美国的18至29岁墨西哥裔美国成年人。由于我们要比较两个独立的总体(男性和女性),我们需要从整体的NHANES数据集中根据性别进行抽样,以获取我们感兴趣的两个总体。
我们感兴趣的参数是身体质量指数,通常称为BMI,其单位为千克/平方米。这是一种量化人体组织质量并帮助将其分类为体重过轻、正常或超重的方法。
我们将使用符号 μ₁ 和 μ₂ 来表示这个参数。我们想要找到它们之间的差异,因此我们将使用 μ₁ - μ₂。
在NHANES数据集中,性别被标记为1(男性)和2(女性)。因此,在本讲座中,下标1代表男性总体,下标2代表女性总体。从我们筛选出的几行样本数据(种族仅为墨西哥裔美国人,年龄仅包括18至29岁)中可以看到,BMI列在第二列,精确到小数点后一位。
运行一些基本的数值摘要,我们可以得到男性和女性子组的均值、标准差、最小值、最大值和样本量。右侧还显示了箱线图。在这个比较中,我们真正感兴趣的是这两个总体的均值。我们目前只有样本均值,这将是我们开始的最佳估计。
抽样分布与标准误
样本均值会因样本而异,这将有助于创建我们的抽样分布。请注意,“两个样本均值的差异”这个说法有时会显得冗长,因此如果我提到“样本统计量”,这将指代两个样本均值的差异。
对于我们的样本统计量的抽样分布,它会因样本而异,并围绕真实的总体均值差异 μ₁ - μ₂ 波动。如果两个总体的响应模型都近似正态,或者我们的样本量足够大,那么样本均值差异的分布也将近似正态。
标准误是一个值,它平均告诉我们样本统计量会落在离真实参数多远的地方,其计算公式如下:
标准误公式:
SE = sqrt(σ₁²/n₁ + σ₂²/n₂)
不幸的是,我们不知道这些总体方差(用σ表示)的真实值。因此,我们能做的最好方法是用样本方差来估计它。所以,我们有 S₁² 和 S₂²,分别代表男性组和女性组的方差。
构建置信区间
正如我们之前所见,置信区间将以我们的最佳估计作为中点,并向两侧加减一个误差范围。
最佳估计将是我们无偏的点估计。在这个场景中,最佳估计是我们的样本均值差异,即 x̄₁ - x̄₂。
误差范围,或者我喜欢将其视为考虑抽样分布变异性的“摆动空间”,将是几个估计的标准误。我们所说的“几个”是指一个乘数,这个乘数将基于所需的置信水平从一个特定的分布中获取。对于两个均值,我们将使用t分布。在本例中,我们将使用95%的置信水平,这相当于假设检验中5%的显著性水平。
在计算这个误差范围时,对于两个均值有两种不同的方法。
两种置信区间方法
以下是构建置信区间的两种主要方法。
1. 合并方差法
如果两个总体的方差足够接近,我们将假设它们相等。由于我们不知道这些真实方差,我们可以查看样本方差和每个样本的分布,以判断这个假设是否成立。
2. 未合并方差法
如果我们认为这个假设不成立,我们可以简单地使用未合并方差法并放弃这个假设。
让我们从未合并置信区间的计算开始。同样,我们有我们的最佳估计加减误差范围。最佳估计是样本均值的差异,由 x̄₁ - x̄₂ 给出。我们已经展示了标准误公式,即男性组样本方差除以男性组样本量,加上女性组样本方差除以女性组样本量,然后取平方根。
现在,“几个”是什么意思?这将是我们的乘数,为此我们将使用一个 t* 乘数,它来自具有特定自由度的t分布。要计算确切的自由度,可以使用韦尔奇近似法。不过,这个公式可能有点复杂。如果技术手段不便,需要手工计算,可以使用一个简单保守的方法:取两个样本量中较小的一个,然后减去1。
另一种方法是合并置信区间计算。这是指在我们的样本中方差足够接近,以至于我们可以假设总体的方差相似,然后将方差合并。同样,我们有相同的样本均值差异,然后加减几个估计的标准误。合并的估计标准误现在会发生变化。我们不再使用原来的计算,而是将合并的标准差放在前面,然后乘以样本量倒数之和的平方根。同样,我们将使用相同的 t* 乘数,但自由度不同。在合并版本中,我们只需将两个样本量相加并减去2。同样,这种方法仅在我们能假设总体方差相等时使用。
回到示例:检查假设
现在让我们回到我们的示例并进行计算。
首先,我们需要检查几个假设。第一个假设是,我们的两个总体(男性和女性群体)都有简单随机样本。鉴于NHANES的创建方式,为了本示例的目的,我们将假设我们获得了简单随机样本。本讲座之外我们还会讨论其他复杂的抽样设计,但这里我们只假设简单随机样本。
我们还需要这两个样本彼此独立。这里我们也假设情况如此,男性和女性不能以任何方式具体匹配或配对,因此我们假设两个样本彼此独立。
下一个需要检查的假设是正态性假设。我们之前说过,两个总体的响应模型需要近似正态。一种方法是查看左侧显示的直方图或右侧显示的分位数-分位数图。左侧的直方图都应呈现近似钟形,这能告诉我们是否为正态分布。右侧的QQ图将我们的样本分位数与正态分布的分位数进行比较。我们真正要看的是所有这些点、所有这些数据点是否都落在中间那条线上。穿过图表中心的那条中线代表正态分布,因此我们离那条线越近,就越接近正态分布。
从这两张图可以看出,它们都相当接近正态,但存在一些轻微到中度的偏斜,尤其是在女性组中,从分位数-分位数线的偏离可以看出。我们确实需要两个总体的模型都是正态的,但这里因为我们的样本量很大,我们可以应用中心极限定理并继续进行分析。这种双样本t检验的方法相当稳健,尤其是样本量越大越稳健。这里,因为我们的两个样本量都远超过200,我们将继续应用CLT并向前推进。我们将在后续课程中看到处理非正态数据的不同方法。
另一个需要检查的假设是方差假设,这将告诉我们使用合并法还是未合并法。我们可以查看箱线图的两组四分位距,也可以查看我们拥有的样本标准差。样本标准差看起来非常相似,箱线图的箱体部分高度也看起来非常相似。因此,我们可以说它们足够相似,可以做出总体方差相等的假设,所以我们将使用合并法。
计算置信区间
如果我们使用之前幻灯片中的合并法方程,我们可以开始代入我们的值。最重要的是 t* 乘数,我们将使用值 1.98。随着样本量的增加,自由度增加,这个值将接近1.96。我们确实有相当大的样本量,但为了保守起见,我们将使用值1.98。这个值可以从在线的多个t表中找到,同样取决于你的自由度和置信水平。这里我们使用95%的置信水平。
让我们开始代入一些值。我们可以看到方程左侧的样本均值差异,我们讨论过的 t* 乘数,以及最右侧的估计标准误。当我们开始解这个方程时,我们看到样本均值确实存在微小差异,并且右侧附加了一些摆动空间。
我们最终要构建的置信区间是 -0.385 千克/平方米 到 +1.865 千克/平方米。
稳健性检查:未合并法
现在我们将做一个快速的互动测验。我们向您展示了使用合并法,但现在我们想检查一下,如果总体方差相等的假设确实不成立,未合并法会是什么样子。如果使用未合并法,我们的区间与这里找到的区间匹配,那么我们就发现结果相当稳健。现在请花点时间计算这个问题的未合并方差版本,即未合并置信区间。
正如您刚刚计算的未合并置信区间所示,我们得到的两个区间非常、非常相似。它们偏差不大。因此,我们可以说,无论我们是否假设方差相等,我们的结果都相当稳健。
解释置信区间
现在我们如何解释刚刚找到的区间?这个区间是从 -0.385 到 +1.865。这是什么意思?这个区间是我们的参数合理值的范围。同样,我们试图找到总体均值的真实差异,而我们刚刚根据样本得到了这个估计。
因此,我们可以这样说:我们有95%的置信度估计,对于所有居住在美国的18至29岁墨西哥裔美国成年人,男性和女性之间平均BMI的差异在 -0.385 千克/平方米 和 +1.865 千克/平方米 之间。这个范围给出了基于我们刚刚使用的程序,我们预期参数可能取的所有值。
那么,在陈述开头提到的“95%置信度”是什么意思?这是我们的置信水平,基本上我们是在说,如果我们一次又一次地重复这个程序,取相同的样本量,获取不同的样本,并且每次我们都为那些样本创建一个新的置信区间,我们预计95%的结果区间会包含总体平均BMI的真实差异。因此,我们对我们使用的过程有95%的把握,认为我们捕捉到了我们追求的真实值。
总结
在本节课中,我们一起学习了如何为两个独立样本的总体均值差异构建置信区间。
置信区间用于为我们感兴趣的参数提供一个合理值的范围,在这个例子中,我们的参数是两个总体均值的差异。
这个区间的中心将是我们的最佳估计,这始终来自我们的样本统计量,这里就是我们的样本均值差异。
误差范围或我们为考虑变异性所需的“摆动空间”将是几个估计的标准误,这两者都取决于我们使用的方法,是合并法还是未合并法。
执行此分析时需要检查的假设是:我们需要两个简单随机样本,并且它们需要彼此独立。

我们还需要这些响应的总体是正态的。如果我们没有正态性,大样本量会有所帮助,我们可以像在我们的示例中看到的那样,应用中心极限定理继续前进。
然后我们检查方差相等的假设,这有助于我们决定是使用合并法还是未合并法。
最后,知道如何解释你找到的区间及其背后的置信水平,两者之间存在细微差别,这在未来的分析中很重要。
50:单总体比例检验框架构建 📊

在本节课中,我们将学习如何构建一个完整的单总体比例假设检验框架。我们将通过一个关于青少年睡眠问题的具体案例,一步步理解假设检验的流程、核心概念和计算方法。
概述
假设检验是统计学中用于判断关于总体参数的某个主张是否得到数据支持的方法。我们通常从一个问题开始,例如“某个参数的值可能是某个特定值吗?”,然后利用收集到的数据来支持或反驳这个主张。
本节课我们将通过一个具体案例,来运行一个单总体比例假设检验。这个案例基于一项关于儿童健康,特别是睡眠习惯的全国性民意调查。
案例背景:青少年睡眠问题
一项针对13至18岁青少年父母的全国性民意调查显示,在过去的年份中,有52%的父母认为电子产品和社交媒体是他们孩子睡眠不足的原因。
我们的研究问题是:如今,是否有更多的父母认为他们青少年的睡眠不足是由电子产品和社交媒体引起的?
第一步:定义参数与总体
在进行任何检验之前,我们必须明确研究对象。
- 总体:所有拥有13至18岁青少年的父母。
- 感兴趣的参数:总体比例 P。
- P 代表总体中相信电子产品和社交媒体导致其青少年睡眠不足的父母比例。
我们的主要目标是:检验相信此观点的父母比例是否存在显著增加。
第二步:建立假设
假设是在收集数据之前就设定的,以确保我们的信念不会影响对数据的解读。
以下是建立假设的步骤:
- 零假设 (H₀):通常代表“没有变化”或“现状”。基于背景信息,我们设定 H₀: P = 0.52。
- 备择假设 (Hₐ):代表我们想要寻找证据支持的猜测。由于研究问题是寻找“显著增加”,因此我们设定 Hₐ: P > 0.52。
- 明确参数含义:完整的假设陈述应说明 P 的含义。P 是“总体中相信电子产品和社交媒体导致其青少年睡眠不足的青少年父母比例”。
- 设定显著性水平 (α):这是一个阈值,用于判断结果是否具有统计显著性。通常设定为 α = 0.05。如果后续计算出的 P 值小于 0.05,我们就认为结果显著。
第三步:收集数据并检查条件
我们收集了数据。调查结果显示,在随机抽取的 1018 名青少年父母中,有 56% 的人认为电子产品和社交媒体是孩子睡眠不足的原因。
在进一步分析之前,我们必须检查一些前提条件是否满足,以确保我们的检验方法有效。
以下是需要检查的条件:
- 随机样本:我们的样本必须是随机抽取的。案例中已说明这是随机样本,满足条件。
- 样本量足够大:这确保了样本比例的抽样分布近似正态分布。检查方法是计算 n * p₀ 和 n * (1 - p₀),两者都应至少为 10。
- 这里,p₀ 是零假设下的比例值,即 0.52。
- n 是我们的样本量 1018。
- 计算:
1018 * 0.52 = 529.36,1018 * (1 - 0.52) = 488.64。两者都远大于 10,条件满足。
过渡
至此,我们已经设定了假设,并检查了数据是否满足进行检验的前提条件。接下来,我们将进入检验的核心部分:计算检验统计量和 P 值,以判断结果是否显著。
第四步:进行检验与决策
(注:原视频内容在此处暂停,后续步骤通常包括计算标准误、Z 分数和 P 值,最后将 P 值与显著性水平 α 比较并做出统计决策。)

总结
在本节课中,我们一起学习了构建单总体比例假设检验的完整框架。我们从明确研究问题和定义总体参数开始,逐步建立了零假设和备择假设,并设定了显著性水平。随后,我们利用案例数据检查了随机抽样和样本量足够大这两个关键前提条件。这个过程为后续实际计算检验统计量、评估证据强度并得出最终结论奠定了坚实的基础。掌握这个框架是理解所有类型假设检验的第一步。
51:单总体比例假设检验 📊

在本节课中,我们将学习如何对一个总体比例进行完整的假设检验。我们将通过一个具体案例,从建立假设开始,逐步完成检验统计量的计算、P值的获取,并最终得出统计结论。
概述
假设检验是统计学中用于根据样本数据对总体参数做出推断决策的重要方法。本节课,我们将聚焦于单总体比例的假设检验。我们将学习完整的四步流程:1)陈述假设并选择显著性水平;2)检查假设条件;3)计算检验统计量并获取P值;4)根据P值得出结论。
第一步:陈述假设与选择显著性水平
上一节我们介绍了假设检验的基本概念,本节中我们来看看如何具体应用。首先,我们需要明确研究问题和对应的统计假设。
我们的研究问题是:是否有多于52%的青少年父母认为电子产品和社交媒体是导致孩子睡眠不足的原因?
基于此,我们建立以下假设:
- 零假设 (H₀):总体比例 p = 0.52。
- 备择假设 (Hₐ):总体比例 p > 0.52。
这里的 p 代表所有青少年父母中,持上述观点的真实比例。
接下来,我们选择显著性水平 α。这是一个阈值,用于判断结果是否具有统计显著性。通常我们选择 α = 0.05。
根据一项针对 n = 1018 位父母的民意调查,我们得到的样本比例最佳估计值为 p̂ = 0.56。
第二步:检查假设条件
在计算之前,我们必须确保数据满足进行比例假设检验的条件。以下是需要检查的关键条件:
- 独立性:样本观察值需要相互独立。这通常通过随机抽样来保证。
- 样本量条件:样本量需要足够大,以确保样本比例的抽样分布近似正态分布。这要求满足 np₀ ≥ 10 且 n(1 - p₀) ≥ 10,其中 p₀ 是零假设中的比例值(0.52)。
第三步:计算检验统计量与P值
现在我们已经建立了假设并验证了条件,本节中我们来计算检验统计量。
检验统计量的通用公式是:
检验统计量 = (最佳估计值 - 假设值) / 估计值的标准误
对于单比例检验,具体公式为:
Z = (p̂ - p₀) / SE(p̂)
其中,标准误 SE(p̂) 在零假设下的计算公式为(称为零标准误):
SE(p̂) = √[ p₀ * (1 - p₀) / n ]
将我们的数据代入计算:
- p̂ = 0.56
- p₀ = 0.52
- n = 1018
- SE(p̂) = √[0.52 * 0.48 / 1018] ≈ 0.0157
因此,Z检验统计量为:
Z = (0.56 - 0.52) / 0.0157 ≈ 2.555
这个Z值意味着:我们观察到的样本比例(0.56)比零假设假设的总体比例(0.52)高出约 2.555个零标准误。
Z检验统计量的分布
Z检验统计量本身也是一个随机变量,它服从标准正态分布(均值为0,标准差为1),记作 N(0, 1)。这是因为我们从原始的正态分布数据中减去了假设的均值(中心化),并除以其标准误(标准化)。
获取P值
P值是在零假设成立的前提下,得到当前观测结果或更极端结果的概率。由于我们的备择假设是 p > 0.52,我们需要计算Z值大于等于2.555的概率。
在标准正态分布曲线上,2.555位于右侧尾部。通过查Z表或使用统计软件,我们可以找到对应的右侧尾部面积,即P值。
P值 ≈ 0.0053
第四步:得出结论
最后一步,我们将P值与预先设定的显著性水平α进行比较,并得出最终结论。
我们得到 P值 (0.0053) < α (0.05)。这意味着,如果零假设(p=0.52)成立,我们观察到样本比例为0.56或更高的概率非常小(小于5%)。因此,我们有足够的证据拒绝零假设。
结论陈述如下:
有充分的证据表明,认为电子产品和社交媒体是导致青少年睡眠不足原因的家长比例大于52%。
总结
本节课中,我们一起学习了单总体比例假设检验的完整流程。我们回顾一下关键的四个步骤:

- 陈述假设与选择α:明确零假设、备择假设和显著性水平。
- 检查条件:确保数据的独立性和足够的样本量。
- 计算检验统计量与P值:使用公式 Z = (p̂ - p₀) / SE(p̂) 计算Z值,并找到对应的P值。
- 得出结论:比较P值与α,决定拒绝或无法拒绝零假设,并给出实际意义的结论。
我们还了解了Z检验统计量服从标准正态分布 N(0, 1) 的原因。在未来的课程中,我们将会遇到其他类型的检验统计量,例如T检验统计量,但其核心逻辑是相通的。
52:双总体比例差异检验框架构建 📊

概述
在本节课中,我们将学习如何为两个总体比例之间的差异构建假设检验的框架。我们将使用一个关于儿童游泳课程的真实调查数据作为例子,逐步完成检验的设定工作。
检验背景与问题
上一节我们介绍了假设检验的基本概念。本节中,我们来看看如何将其应用于比较两个不同群体的比例。
CS Mot儿童医院进行了一项关于儿童健康与安全的全国性调查。本次调查关注水上安全,特别是游泳课程。
我们的研究问题是:报告其孩子曾上过游泳课程的黑人儿童父母的比例,与西班牙裔儿童父母的比例之间,是否存在显著差异?
定义总体与参数
首先,我们需要明确所研究的总体。
- 第一个总体:所有6至18岁黑人儿童的父母。
- 第二个总体:所有6至18岁西班牙裔儿童的父母。
我们感兴趣的参数是这两个总体比例之间的差异,即 P1 - P2。在本视频中,我们指定:
- 组1(P1):黑人儿童的父母。
- 组2(P2):西班牙裔儿童的父母。
我们将以10%的显著性水平,检验这两个总体比例是否存在显著差异。请注意,显著性水平必须在查看任何数据之前设定。
建立假设
接下来,我们建立原假设和备择假设。
原假设必须包含我们感兴趣的参数(P1 - P2),并且必须包含等号。对于比例差异检验,原假设值通常为0,即 H0: P1 - P2 = 0。
备择假设则反映我们想要验证的研究问题。它可以是“大于”、“小于”或“不等于”0。以下是备择假设的三种可能形式:
- Ha: P1 - P2 > 0 (检验组1比例是否显著高于组2)
- Ha: P1 - P2 < 0 (检验组1比例是否显著低于组2)
- Ha: P1 - P2 ≠ 0 (检验两组比例是否存在显著差异,不关心方向)
在本案例中,研究问题只关心是否存在差异,而不指定方向。因此,我们应选择“不等于”符号。完整的假设为:
- H0: P1 - P2 = 0
- Ha: P1 - P2 ≠ 0
- 显著性水平 α = 0.10
查看样本数据
现在,我们来看CS Mot儿童医院提供的调查结果数据。
- 样本1:调查了247名6至18岁黑人儿童的父母,其中91人报告其孩子曾上过游泳课程。
- 样本2:调查了308名6至18岁西班牙裔儿童的父母,其中120人报告其孩子曾上过游泳课程。
这些数据为我们计算样本比例差异提供了基础。
检验条件
在进行计算之前,我们需要验证两个重要条件是否满足。
第一个条件是样本独立性。我们需要确信调查机构收集的是两个独立的随机样本。这通常依赖于研究设计的描述,无法从现有数据中直接验证。
第二个条件是样本量足够大,以确保抽样分布近似正态。具体来说,我们需要计算一个合并样本比例(p_hat_pool),并检查以下四项是否都至少为10:
- n1 * p_hat_pool
- n1 * (1 - p_hat_pool)
- n2 * p_hat_pool
- n2 * (1 - p_hat_pool)
首先,计算合并样本比例。公式为总“是”的回答数除以总受访人数。
# 计算合并样本比例 p_hat_pool
total_yes = 91 + 120
total_n = 247 + 308
p_hat_pool = total_yes / total_n # 结果为 0.38
计算得到合并比例约为0.38。接着,我们验证条件:
- 247 * 0.38 ≈ 94 > 10
- 247 * (1 - 0.38) ≈ 153 > 10
- 308 * 0.38 ≈ 117 > 10
- 308 * (1 - 0.38) ≈ 191 > 10
所有四项均大于10,因此正态性条件满足。如果此条件不满足,可以使用其他不依赖该假设的检验方法,这将在后续课程中讨论。
计算点估计值
我们的参数是总体比例差异 P1 - P2。其最佳点估计值是样本比例差异 p_hat1 - p_hat2。
首先,计算各自的样本比例:
# 计算样本比例
p_hat1 = 91 / 247 # 黑人儿童父母组样本比例,约为 0.37
p_hat2 = 120 / 308 # 西班牙裔儿童父母组样本比例,约为 0.39
然后,计算点估计值(样本比例差异):
point_estimate = p_hat1 - p_hat2 # 约为 -0.02
计算结果显示,样本比例差异约为-0.02,意味着在本样本中,黑人儿童父母报告孩子上过游泳课程的比例略低于西班牙裔儿童父母的比例。
总结

本节课中,我们一起学习了为双总体比例差异构建假设检验框架的完整步骤。我们明确了研究问题与参数,建立了原假设和备择假设,查看了样本数据,并验证了进行检验所需的条件。最后,我们计算了参数的点估计值。
至此,检验的框架已搭建完毕。在下一节课中,我们将基于这个框架,进行具体的检验统计量计算、P值计算,并最终得出统计结论。
53:双总体比例差异检验 📊

在本节课中,我们将学习如何对两个总体的比例差异进行假设检验。我们将完成上一节视频中开始的假设检验,以判断黑人儿童和西班牙裔儿童的父母中,报告孩子上过游泳课的比例是否存在显著差异。
上一节我们介绍了如何建立假设。本节中我们来看看如何计算检验统计量、P值,并得出最终结论。
概述与回顾
我们的零假设是:两个总体的比例没有差异,即 P1 - P2 = 0。
我们的备择假设是:两个总体的比例存在差异,即 P1 - P2 ≠ 0。
我们将在显著性水平 α = 0.1 下进行检验,并将P值与这个α值进行比较。
根据样本数据,我们计算得到:
- 黑人儿童样本比例
P_hat1 = 0.37 - 西班牙裔儿童样本比例
P_hat2 = 0.39 - 两个样本比例之差为
-0.02 - 合并样本比例
P_hat = 0.38
计算检验统计量
检验统计量的一般公式为:
Z = (最佳估计值 - 假设估计值) / 估计值的标准误
在我们的案例中:
- 最佳估计值是
P_hat1 - P_hat2。 - 根据零假设,假设估计值
P1 - P2 = 0。 - 估计值的标准误公式为:
SE = sqrt( P_hat * (1 - P_hat) * (1/n1 + 1/n2) )
以下是计算过程:
我们将已知数值代入公式。样本比例之差为 -0.02。将 P_hat、n1 和 n2 的值代入标准误公式,计算得到标准误约为 0.041。
因此,检验统计量 Z = (-0.02) / 0.041 ≈ -0.48。
这个检验统计量的含义是:我们观察到的样本比例差异,位于假设的总体比例相等(差值为0)的均值下方约 0.48 个估计标准误处。
计算P值并做出决策
由于我们得到的是Z统计量,它服从标准正态分布。我们的备择假设是双侧的(P1 - P2 ≠ 0),因此我们需要计算Z统计量绝对值两侧尾部的面积。
以下是P值的计算与比较:
在标准正态分布曲线上,Z = -0.48 对应的双侧P值约为 0.63。这个值可以通过查表、公式卡或计算机软件得到。
现在,我们将P值 0.63 与显著性水平 α = 0.1 进行比较。由于 0.63 > 0.1,我们无法拒绝零假设。这并不意味着我们接受零假设,只是表明我们没有足够的证据反对它。
因此,我们得出结论:没有显著证据表明黑人儿童和西班牙裔儿童的父母中,报告孩子上过游泳课的比例存在差异。这两个群体的比例看起来大致相当。
其他检验方法
除了我们使用的双总体比例差异Z检验,还有两种替代方法,适用于不同的情况或数据呈现形式。
以下是两种主要的替代检验方法:
-
卡方检验
- 当样本数据以双向列联表形式呈现时(例如,行是种族,列是“是否上过游泳课”),可以使用卡方检验。
- 它的假设表述略有不同,通常检验两个分类变量是否独立,或两个总体的分布是否存在差异。
- 重要限制:卡方检验本质上只适用于双侧备择假设。如果备择假设是单侧的(大于或小于),则不能直接使用卡方检验。在双侧假设下,其结论应与Z检验一致。
-
费希尔精确检验
- 当样本量较小时,Z检验或卡方检验所依赖的正态近似可能不准确,此时可以使用费希尔精确检验。
- 它可以直接计算精确的P值,而不依赖于大样本的分布假设。
- 它既可以用于双侧检验,也可以用于单侧检验。
- 对于大样本,计算可能非常耗时,但结论通常与Z检验非常接近。

总结
本节课中我们一起学习了如何执行双总体比例差异的假设检验。通过一个具体案例,我们计算了检验统计量和P值,并基于P值与显著性水平的比较做出了“无法拒绝零假设”的决策,得出结论认为黑人儿童与西班牙裔儿童的上游泳课比例没有显著差异。
我们还简要介绍了卡方检验和费希尔精确检验这两种替代方法,它们分别适用于数据以列联表形式呈现或样本量较小的情况。掌握多种检验方法有助于你根据不同的数据和假设条件选择最合适的分析工具。
54:P值、P值操纵及其他 🧮


在本节课中,我们将探讨统计学中一个核心但常被误解的概念——P值。我们将了解P值的定义、常见误解,以及与之相关的“P值操纵”现象。最后,我们将讨论如何负责任地使用和报告P值,以促进科学研究的透明度和可重复性。

P值是什么?🤔

上一节我们介绍了假设检验的基本框架,本节中我们来看看P值在其中扮演的确切角色。

P值是在假设检验的语境下定义的。首先,你需要设定一个零假设和一个备择假设。在描述P值时,你必须说明:如果零假设是真实的(即我们假设它是事实),那么P值就是根据你的数据得到当前(或更极端)检验统计量的概率。
Tim对此有一个生动的解释:P值是一种“惊讶度”的度量。具体来说,它并非直接衡量证据的强度,而是在零假设为真的前提下,衡量你观测到的数据有多么令人惊讶。P值越高,意味着数据越符合零假设的预期,你的惊讶程度应该越低;P值越低,则意味着数据越不符合预期,你的惊讶程度应该越高。这种惊讶是针对数据的,而非直接针对假设本身。
核心概念公式:
P值 = P(得到当前或更极端的统计量 | 零假设为真)
P值不是什么?🚫
理解了P值是什么之后,同样重要的是要澄清P值不是什么。以下是关于P值的常见误解。
P值并不告诉你你的数据为真的可能性。这种理解是完全错误的,因为它完全忽略了“零假设为真”这个前提条件。P值是在这个特定假设下计算得出的。
更普遍地说,P值并不直接告诉我们关于假设本身的任何信息。它只告诉我们,在某个假设下,数据的概率。当然,我们已经知道手头数据的概率是1(因为数据已经发生)。P值试图量化的是某个理论为真的可能性,但实际上,理论本身要么为真要么为假。因此,P值不是理论为真的概率,而是在某个特定理论下观测到数据的概率。
此外,一个很小的P值(统计显著性)并不一定意味着具有实际意义或巨大的效应量。例如,即使均值只比10高出0.001,只要样本量足够大,你几乎肯定能获得一个非常小的P值。但这在现实世界中可能毫无实际价值。


什么是P值操纵?🎭
从P值本身,我们过渡到第二个“P”——P值操纵。近年来,关于P值操纵的讨论非常多。
当一个P值被“操纵”时,我们无法再按照其数学定义来解读它。有无数种方法可以操纵P值。
以下是P值操纵的一种常见方式:
- 进行大量测试:你有一个研究数据集(可以是实验的或观察性的),然后你运行尽可能多的测试。有时这被称为探索性分析,有时就直接被称为P值操纵。你进行了数十次甚至数百次不同的分析,然后发现其中一个结果是显著的,于是你很高兴地报告了这个结果。然而,我们无法再以原始意义解读这个P值。虽然那个特定的分析本身可能计算正确,但要解读P值,我们需要了解全局——我们需要对所有已进行的分析保持透明。如果我们不知道对数据做了哪些处理,就无法正确解读P值,它就被“操纵”了。
P值操纵的后果是,我们无法再信任或使用这个结果。这项研究基本上变得没有信息量,浪费了精力和资源。
P值操纵可能在不经意间发生。许多科学家在其职业生涯中,可能都不止一次无意中进行过P值操纵。例如,当你查看数据时,你有一个总体的假设,但结果接近显著性边界。你可能会想:“如果我换这个变量看看呢?”或者“看看这个子群体呢?”这看起来是合理的探索,但问题在于,这些研究想法最初并不在你的计划中。你是在不断试探,直到得到一个你认为“有意义”的P值。但这并不真的意味着什么,它只意味着你查看了许多不同的问题,这实质上稀释了你的P值。
P值操纵不仅限于P值。根据广义定义,只要一个数值无法再按其本意被解读,它就被“操纵”了。因此,你可以操纵任何统计量,例如平均值。如果你剔除了一些异常值,并声称“我们在没有异常值的情况下查看数据”,但你在选择剔除哪些异常值或如何定义异常值时存在主观性,这本身就是一种操纵。你最终仍然得到了一个均值,但如果你不知道异常值被移除,这个均值就不再是原始意义上的均值,可能会产生误导。影响效应量估计、参数估计等所有其他数值,都可能受到与操纵P值相同的选择过程的影响。
我们应该摒弃P值吗?🔄

鉴于P值存在的问题和被操纵的可能性,有人主张完全摒弃P值,甚至有些期刊决定禁用它们。那么,我们是否应该摒弃P值呢?

完全禁止P值似乎非常不明智,这就好比因为人们误用平均值或百分比就禁止它们一样。P值本身是一个工具,问题在于如何使用它。
关键在于系统性地改变我们进行数据分析的方式,并充分意识到推断统计学(特别是P值)中内置的所有假设。确保我们在更大范围内采用预注册等做法。预注册意味着在收集数据之前,就写下完整的抽样计划、所有方法学选择,形成一个尽可能详细的协议。然后,在研究过程中严格遵循这个协议。这样,你进行的才是对假设的验证性检验,而不是探索性检验。研究越具有探索性,P值的意义就越不明确。预注册程度越高,得到的P值就越“纯净”,我们越能清楚知道如果完全按照协议重复研究会发生什么。

这也引出了可重复性问题。许多研究论文只报告了最终得到显著P值的那一步分析方法,而没有包含所有尝试过的步骤。如果能在方法部分说明“我们尝试了A方法,不显著;尝试了B方法,得到了某个P值”,读者就能获得更多背景信息,从而更好地解读最终报告的P值,也更容易复现研究。
良好实践与建议 ✅

最后,我们来探讨一些可以改进研究和解读的良好实践与建议。美国统计协会关于P值的声明中有一条原则是:正确的推断需要完整的报告和透明度。
对于研究者和数据分析者,以下是一些建议:
- 使用多种方法验证:在进行分析时,可以尝试使用多种不同的统计方法。如果它们都指向相似的结论,那么这个结果就更稳健。
- 公开数据和代码:尽可能公开你的数据和分析代码。这能让其他研究者、学习者验证你的结果,尝试不同的分析,这是学习和确保研究可重复性的绝佳方式。即使因数据敏感无法完全公开,在同行评审时也应尽可能提供访问途径。
- 保持透明和记录:在数据分析中,保持代码记录和工作日志至关重要。这能追踪对数据所做的每一步处理,便于回溯和检查。
- 理解统计的局限性:统计推断是证据链中的一环,它严重依赖于之前环节(如数据收集、存储)的完整性。如果前期步骤有问题,统计学无法修复它,但仍会输出数字。因此,从一开始就以正确的方式进行研究、处理数据、记录日志至关重要。
对于研究结果的“消费者”(如读者、公众),挑战更大,因为你无法改变研究者的做法。但你可以:
- 寻找透明度:更信赖那些公开分享数据和代码的研究。
- 关注重复研究:不要过分关注单篇论文,而是寻找针对同一问题的、由不同团队在不同时间进行的重复性研究。
- 保持批判性思维:意识到单个分析很少能给出最终答案,看到“需要更多研究”的结论时,理解这是科学进程的正常部分。
总结 📝
本节课中,我们一起学习了:
- P值的定义:它是在零假设为真的前提下,得到当前或更极端检验统计量的概率,是一种“惊讶度”的度量。
- P值的误解:P值不是假设为真的概率,也不直接代表效应的大小或实际重要性。
- P值操纵:指通过选择性报告、进行大量测试等方式,使得P值无法再被正确解读的现象。这不仅影响P值,也影响其他统计量。
- P值的存废:不应简单摒弃P值,而应通过预注册、提高透明度、完整报告等系统性的良好实践来规范其使用。
- 良好实践:包括验证分析、公开数据与代码、保持完整记录,以及作为消费者关注研究的透明度和可重复性。

科学是一个不断积累证据的过程。保持激进透明、鼓励验证和重复,是推动科学进步的关键。
55:基于置信度的单总体均值检验 📊

在本节课中,我们将学习如何对总体参数(特别是总体均值)进行假设检验。我们将通过一个具体的例子,学习从提出假设、检查数据、计算检验统计量到得出结论的完整流程。
概述
我们将使用一个关于“侧手翻距离”的研究数据作为例子。研究问题是:成年人的平均侧手翻距离是否大于80英寸?我们将通过假设检验来回答这个问题,并学习如何解读结果。
第一步:建立假设与显著性水平
上一节我们介绍了假设检验的基本概念,本节中我们来看看如何为我们的研究问题建立具体的假设。
首先,我们需要明确两个相互竞争的理论:零假设和备择假设。
- 零假设 (H₀):总体均值等于某个特定值。在本例中,即成年人的平均侧手翻距离等于80英寸。
- 公式:
H₀: μ = 80
- 公式:
- 备择假设 (Hₐ):研究者的猜想。在本例中,研究者认为平均距离大于80英寸。
- 公式:
Hₐ: μ > 80
- 公式:
接下来,我们需要设定显著性水平 (α),它决定了我们需要多少证据才能拒绝零假设。通常我们设定为5%。
- 公式:
α = 0.05 - 这意味着,如果零假设为真,我们观察到的结果(或更极端的结果)出现的概率小于或等于5%时,我们才有足够证据拒绝零假设。
第二步:检查数据与假设
在开始计算之前,我们必须先审视我们的数据,并检查进行检验所需的前提条件是否满足。
我们有一个包含25名成年人侧手翻距离的样本。以下是数据的数值摘要:
- 样本均值
x̄ = 82.48英寸 - 样本标准差
s(用于估计总体标准差σ) - 样本量
n = 25
虽然样本均值82.48大于80,但我们需要判断这个差异是否显著,还是仅仅是抽样波动造成的。
进行单样本t检验有两个主要前提条件:
- 随机性:样本可以视为来自总体的一个简单随机样本。
- 正态性:总体数据分布近似正态(钟形曲线)。如果样本量足够大(通常n≥30),根据中心极限定理,即使总体不呈正态分布,样本均值的分布也会近似正态。我们的样本量为25,属于中等偏小,因此需要检查数据分布。
通过绘制数据的直方图和Q-Q图,我们发现数据分布略有偏斜,但考虑到样本量,我们可以认为中心极限定理在一定程度上适用,允许我们继续进行t检验。
第三步:计算检验统计量与P值
现在,我们将数据总结为一个检验统计量,它衡量了我们的样本数据与零假设的兼容程度。
我们使用t统计量,其计算公式如下:
t = (x̄ - μ₀) / (s / √n)
其中:
x̄是样本均值(82.48)μ₀是零假设中的总体均值(80)s是样本标准差n是样本量(25)s / √n称为估计标准误,是衡量样本均值波动性的“尺子”。
将我们的数据代入公式,计算出的t统计量约为 0.82。
这个值意味着:我们的样本均值比零假设值(80英寸)高出0.82个估计标准误。这个差距并不大,甚至不到1个标准误。
为了判断这个t值是否“不寻常”,我们将其转换为P值。P值表示:在零假设为真的前提下,得到当前观测结果(或更极端结果)的概率。
由于我们的备择假设是“大于80”(右尾检验),因此P值对应的是t分布中大于等于0.82的那部分面积。
我们的t统计量服从自由度为 n-1 = 24 的t分布。查表或使用软件计算后,得到P值约为 0.21。
第四步:做出决策与结论
现在,我们将P值与预先设定的显著性水平α进行比较,并做出决策。
决策规则非常简单:
- 如果 P值 ≤ α (0.05),则拒绝零假设。
- 如果 P值 > α (0.05),则未能拒绝零假设。
在我们的例子中,P值(0.21)远大于α(0.05)。因此,我们未能拒绝零假设。
结论可以表述为:基于当前样本数据(平均距离82.48英寸),我们没有足够的证据支持“成年人的平均侧手翻距离大于80英寸”这一理论。
第五步:与置信区间关联
假设检验的结果可以通过置信区间来验证。一个90%的置信区间(因为我们的检验是单侧5%,相当于双侧10%)给出了总体均值可能取值的合理范围。
计算得到的90%置信区间大约为 (77.2, 87.7) 英寸。
请注意:
- 零假设值 80英寸落在这个区间内。这意味着80是一个合理的总体均值估计值。
- 置信区间并没有完全位于80以上,这再次支持了我们“未能拒绝μ=80”的结论。
第六步:关于假设的稳健性与非参数方法
我们之前注意到数据分布略有偏斜,这可能会让人对t检验的正态性假设产生疑虑。为了检验我们结论的稳健性,我们可以使用不依赖于正态分布假设的非参数检验。
一种常用的替代方法是Wilcoxon符号秩检验,它检验的是总体中位数(而非均值)是否等于某个值。
对该数据执行Wilcoxon检验,得到的P值同样远大于0.05,结论与t检验一致:未能拒绝零假设。这表明,即使正态假设不完全满足,我们基于t检验得出的结论仍然是可靠的。

总结
本节课中,我们一起学习了如何进行关于单总体均值的假设检验。我们回顾了整个流程:
- 建立假设:明确零假设(H₀)和备择假设(Hₐ),并设定显著性水平(α)。
- 检查数据:审视样本数据,验证随机性和正态性(或样本量足够大)等前提条件。
- 计算统计量:计算t检验统计量,衡量数据与零假设的差距。
- 求解P值:根据t分布求出P值,它代表了在H₀为真时得到当前结果的概率。
- 做出决策:比较P值与α。若P值小,则拒绝H₀;若P值大,则未能拒绝H₀。
- 得出结论:用通俗的语言,结合研究背景,解释统计结论的含义。
- 关联与验证:使用置信区间来辅助理解和验证假设检验的结果。
- 考虑假设:了解检验的前提条件,并在必要时考虑使用更稳健的非参数方法。
核心在于理解,假设检验是一种基于概率的反证法:我们假设零假设成立,然后看数据是否出现了小概率事件。如果没有,我们就维持原假设;如果出现了,我们就有理由怀疑原假设不正确。
56:总体均值差异检验 📊

在本节课中,我们将学习如何检验总体均值差异,即分析配对数据。我们将通过一个厨房橱柜报价的例子,来理解整个假设检验的流程、计算和结论。
概述
我们将研究20个家庭在厨房改造时,从两个供应商(A和B)获得的橱柜报价。我们的目标是判断这两个供应商的报价是否存在平均差异。由于每个家庭都提供了两个报价,数据是配对的。我们将通过检验差异变量(供应商A报价 - 供应商B报价)的均值是否为零,来回答这个问题。
研究问题与假设
我们的研究问题是:两个供应商的橱柜报价是否存在平均差异?这等价于检验差异的总体均值 μ_D 是否为零。
我们定义差异为:D = 供应商A报价 - 供应商B报价。
- 零假设 (H₀):
μ_D = 0。两个供应商的平均报价没有差异。 - 备择假设 (H₁):
μ_D ≠ 0。两个供应商的平均报价存在差异。 - 显著性水平 (α): 0.05。
由于我们没有预先设定哪个供应商更贵,因此使用双侧检验。
数据探索与假设检查
在开始检验之前,我们需要检查数据并验证假设。
数据配对性
数据是配对的,因为每个家庭(同一个体)都提供了两个测量值(供应商A和B的报价)。因此,我们的分析单位是每个家庭的报价差异。
检验假设
进行检验前,需要满足两个关键假设:
- 随机样本: 我们假设这20个家庭是随机抽取的,因此其报价差异也构成一个随机样本。
- 正态性: 我们假设差异的总体服从正态分布。当样本量较大(通常 n ≥ 25)时,此假设可以放宽。本例中 n=20,接近25,我们可以通过Q-Q图来评估。
观察Q-Q图,数据点大致围绕一条直线分布,没有严重偏离。因此,我们有理由认为差异总体近似正态分布,可以进行后续的t检验。
描述性统计
让我们先查看差异数据的分布和摘要统计量。
以下是差异数据的直方图和关键统计量摘要:
- 样本量 (n): 20
- 均值 (x̄_D): $17.30
- 标准差 (s_D): $28.50
- 中位数: $13.50
- 最小值: -$30 (供应商A比B便宜$30)
- 最大值: $90 (供应商A比B贵$90)
直方图显示数据大致呈钟形分布。均值和中位数均为正数,初步提示供应商A的平均报价可能更高。
执行假设检验
现在,我们使用样本数据来检验零假设。
计算检验统计量
我们使用t检验统计量,其公式为:
t = (x̄_D - μ₀) / (s_D / √n)
其中,μ₀ 是零假设中的值,此处为0。
代入我们的数值:
t = (17.30 - 0) / (28.50 / √20) ≈ 2.72
这个结果意味着,我们观察到的样本均值差异($17.30)比零假设值(0)高出约2.72个估计标准误。
计算P值并做出决策
我们的备择假设是 μ_D ≠ 0,因此需要计算双侧P值。t统计量 2.72 服从自由度为 n-1 = 19 的t分布。
我们需要找出t分布中,绝对值大于等于 |2.72| 的总面积(即 t ≥ 2.72 和 t ≤ -2.72 的区域)。
通过计算或查表,得到 P值 ≈ 0.014。
决策: 将P值 (0.014) 与显著性水平 α (0.05) 比较。因为 0.014 < 0.05,我们拒绝零假设。
结论
有足够的统计证据表明,供应商A和B的橱柜报价存在显著的平均差异(在α=0.05水平下)。基于样本均值 $17.30,可以推断供应商A的平均报价显著高于供应商B。
置信区间分析
为了更深入地了解差异的大小和方向,我们可以计算总体均值差异的95%置信区间。
置信区间的公式为:
x̄_D ± t* × (s_D / √n)
其中,t* 是自由度为19,对应95%置信水平的临界值,约为 2.093。
代入计算:
17.30 ± 2.093 × (28.50 / √20) ≈ 17.30 ± 13.33
因此,95%置信区间为 ($3.97, $30.63)。
解读: 我们有95%的信心认为,总体均值差异(供应商A - 供应商B)落在这个区间内。因为整个区间都是正数,且不包含0,这进一步支持了我们的假设检验结论:供应商A确实更贵,且差异具有统计显著性。
当正态假设不满足时
如果差异总体的正态性假设明显不成立(例如样本量很小且分布严重偏斜),我们可以使用一种非参数检验方法:威尔科克森符号秩检验。
该检验不检验均值,而是检验中位数差异是否为零。
- 零假设 (H₀): 差异的中位数等于0。
- 备择假设 (H₁): 差异的中位数不等于0。
对本例数据执行该检验,得到的P值约为 0.02。
决策与结论: 因为 0.02 < 0.05,我们同样拒绝零假设。结论是:供应商A和B的橱柜报价存在显著的中位数差异。这与我们之前t检验的结论一致,增强了我们研究发现的稳健性。
总结
本节课我们一起学习了如何对配对数据进行总体均值差异的检验。
- 核心概念: 对于配对数据(如对同一个体的前后测量、配对样本),我们通过计算差异变量,将问题转化为对单一均值(
μ_D)的检验。 - 检验流程: 我们明确了研究问题,设定了零假设和备择假设,检查了数据(随机性、正态性),计算了t统计量和P值,并基于P值做出了统计决策。
- 辅助工具: 置信区间帮助我们估计差异的大小和方向。当正态假设不满足时,威尔科克森符号秩检验提供了一个可靠的替代方案。
- 最终结论: 在我们的橱柜报价案例中,无论是t检验还是非参数检验,都提供了证据表明两个供应商的报价存在显著差异,且供应商A的平均报价更高。

通过这个例子,你掌握了分析配对数据、检验均值差异的完整方法论。
57:独立组别总体均值差异检验 🧪

在本节课中,我们将学习如何对两个独立组别的总体均值差异进行假设检验。我们已经学习过对单个总体均值和单个总体比例进行检验的方法,现在我们将比较两个独立的组别,并判断它们之间是否存在显著差异。
概述
我们将通过一个具体的研究问题来学习整个流程:针对生活在美国的18至29岁墨西哥裔成年人,男性的平均身体质量指数是否显著高于女性?我们将定义假设、检查数据与假设条件、计算检验统计量、确定P值,并最终做出统计决策。
第一步:定义假设
首先,我们需要明确零假设和备择假设。
- 零假设 (H₀):对于生活在美国的18至29岁墨西哥裔成年人,男性和女性群体的平均BMI没有差异。
- 备择假设 (H₁):男性和女性群体的平均BMI存在显著差异。
我们可以用公式来表示这些假设。令 μ₁ 代表男性群体的总体平均BMI,μ₂ 代表女性群体的总体平均BMI。
- H₀: μ₁ = μ₂ 或 μ₁ - μ₂ = 0
- H₁: μ₁ ≠ μ₂ 或 μ₁ - μ₂ ≠ 0
在本检验中,我们将使用 5% 的显著性水平(α = 0.05)。
第二步:检查数据与假设条件
在计算检验统计量之前,我们必须确保数据满足进行两样本t检验的前提条件。
以下是需要检查的关键假设:
- 简单随机样本:两组数据都应来自简单随机抽样。在本例中,我们假设此条件成立。
- 样本独立性:两个样本必须相互独立。由于我们仅根据性别对数据进行分组,没有理由认为它们是相关的。
- 正态性:两个群体的响应数据应近似服从正态分布。
为了评估正态性,我们可以观察数据的直方图和Q-Q图。在本例数据中,女性组的Q-Q图显示与正态分布存在一定偏差。然而,由于两个组的样本量都很大(均超过200),根据中心极限定理,我们可以放宽对正态性的严格要求。对于大样本量的两均值假设检验,结果具有相当的稳健性。
因此,我们可以继续进行检验。
第三步:计算检验统计量
检验统计量用于衡量样本统计量(此处为样本均值差)与零假设设定的总体参数(此处假设差异为0)之间的距离,这个距离以估计标准误为单位。
计算公式如下:
t = (样本统计量 - 假设参数值) / 估计标准误
对于两个独立组别的均值差异,估计标准误的计算取决于我们是否假设两个总体方差相等,这引出了两种方法:
- 合并方差法:当假设两个总体方差相等时使用。
- 非合并方差法:当不假设两个总体方差相等时使用。
我们需要根据数据决定使用哪种方法。观察两组数据的标准差(非常接近)和箱线图(中位数50%数据的分布高度相似),可以认为两个总体的方差近似相等。因此,我们选择合并方差法。
合并方差法的检验统计量计算公式为:
t = (x̄₁ - x̄₂) / √[ s_p² * (1/n₁ + 1/n₂) ]
其中,s_p² 是合并方差,计算公式为:
s_p² = [ (n₁ - 1)s₁² + (n₂ - 1)s₂² ] / (n₁ + n₂ - 2)
将本例数据(男性与女性的样本均值、标准差和样本量)代入公式计算,得到检验统计量 t ≈ 1.30。
这个值意味着,观察到的样本均值差异(0.74 kg/m²)仅比假设的零差异(0 kg/m²)高出 1.30个估计标准误。
第四步:确定P值并做出决策
P值是在零假设为真的前提下,观察到当前检验统计量(t=1.30)或更极端情况的概率。
由于我们的备择假设是“不等于”(双尾检验),我们需要计算t分布中大于1.30和小于-1.30两侧尾部的总面积。此t分布的自由度为 n₁ + n₂ - 2 = 495。
计算得到的 P值 ≈ 0.1942。
解读:如果男性和女性群体的总体平均BMI真的没有差异(即零假设为真),那么观察到样本均值差为0.74或更极端情况的概率约为19.42%。这是一个相当高的概率。
决策:由于P值 (0.1942) 大于我们设定的显著性水平 (α = 0.05),我们没有足够的证据拒绝零假设。
结论:基于现有样本数据,我们不能支持“生活在美国的18至29岁墨西哥裔成年人中,男性和女性的平均BMI存在显著差异”这一结论。
与置信区间的联系
回顾之前为同一数据构建95%置信区间的课程,我们得到的区间是 (-0.385, 1.865)。零假设值 0 包含在这个区间内。
置信区间给出了总体参数真实差异的合理范围。因为0在这个范围内,它是一个合理的可能值。这再次与我们的假设检验结果一致:没有足够证据表明差异不为0。
总结
本节课我们一起学习了如何对两个独立组别的总体均值差异进行假设检验。

-
核心步骤:
- 定义零假设和备择假设。
- 检查数据并验证假设条件(随机性、独立性、正态性或大样本)。
- 根据方差是否相等的判断,选择合并或非合并方法计算检验统计量。
- 根据检验统计量和自由度确定P值。
- 比较P值与显著性水平,做出拒绝或无法拒绝零假设的决策,并给出最终结论。
-
关键概念:
- 检验统计量
t衡量了样本证据与零假设的距离。 - P值 是零假设为真时,得到当前或更极端结果的概率。
- 决策基于P值与显著性水平α的比较:若 P ≤ α,拒绝H₀;若 P > α,则无法拒绝H₀。
- 假设检验的结果应与相应参数的置信区间结论一致。
- 检验统计量
掌握这些步骤和概念,你就能对两个独立群体的均值差异进行科学的统计推断。
58:情景识别演示 🎯

概述
在本节课中,我们将学习如何使用一个名为“Name that scenario”的在线工具。这个工具旨在帮助你练习区分不同的统计场景,例如单比例检验与双比例检验。我们将通过一个演示来了解其基本功能和使用流程。
工具介绍与访问
“Name that scenario”是一个开放访问的网站,你可以通过课程补充材料页面找到它。
网站首页会要求你输入电子邮件地址和密码来创建账户。
接着,你需要为你的账户设置一个名称。在本次演示中,我们将使用我的账户。
选择练习场景
进入后,点击“Statistics”选项,这是唯一可用的类别。
你会看到一系列不同的统计场景。你需要至少选择两个场景进行练习,当然也可以选择更多。本次演示,我将选择“单比例”和“双比例”这两个场景。
练习流程说明
以下是练习的基本流程:
- 每一轮练习包含10个问题。
- 系统会全程记录你的总得分。
让我们一起来完成前几个问题。
示例问题解析
问题一:
一个新的SEATS布局正在被考虑。一个调查被发布在SEATS网页上,询问用户是否想要新布局。如果至少40%的受访者想要新布局,开发团队将实施更改。这是单比例还是双比例问题?
我认为这是单比例问题,因为我们只考虑一件事(想要新布局的用户比例)。很好,答对了。
你可以看到,无论回答正确与否,页面底部都会给出解释,以便你核对推理过程。
问题二:
一所大学有两个校区。他们想知道一个校区的学生是否比另一个校区的学生更可能参与学生组织。他们从每个校区随机抽取了本科生样本,并询问他们是否参与了学生组织。
因为这个问题涉及两个不同的校区,我认为这是双比例问题。很好,又答对了。
练习机制与总结
我不会让你陪我做完所有问题,因为你需要自己练习。但我们会快速跳转到结尾,以便向你展示完成后会得到的总结统计信息。
每一轮的10个问题都是从题库中无放回地抽取的,因此在同一轮中你不会遇到重复的问题。
现在我们已经完成了一轮练习,可以看到一个会话总结。在我的单比例问题中,4题答对了2题。在双比例问题中,6题答对了5题。总计,我在这一轮10题中答对了7题,获得了7分。如果你持续使用这个网站,它会累计记录你获得的所有分数。
总结

本节课中,我们一起学习了“Name that scenario”工具的使用方法。我们了解了如何访问网站、选择统计场景进行练习、回答具体问题以及查看练习后的总结反馈。现在,你已经准备好可以自己尝试使用这个工具来提升区分统计场景的能力了。
59: 巧克力与骑行实践任务 🍫

在本节课中,我们将学习如何将统计推断的概念应用于实践。具体来说,我们将通过阅读和解读一项已发表的研究结果,来练习如何沟通和解释统计分析。
概述
我们的下一个实践任务是一个绝佳的机会,可以将一些统计推断的概念付诸实践。我们将通过阅读和沟通一项已发表研究的结果来完成这个任务。
任务背景
你受雇于美国自行车队,帮助他们为即将到来的比赛进行训练。主教练阅读了一篇关于在骑行期间摄入黑巧克力和白巧克力对多种不同结果变量影响的文章。
教练特别关注定期摄入巧克力如何影响全力冲刺期间覆盖的总距离,以及摄入的巧克力类型(黑巧克力与白巧克力)是否重要。
我们将提供部分结果的摘要,其中包括一些置信区间估计和一些P值。教练知道你有统计学背景,希望你能帮助他理解和解释这些结果。
你的任务
你被要求给教练写一份备忘录,回答他的问题。你不需要重新计算或验证结果,因此无需涉及详细的公式或计算。相反,你的重点应放在解释结果上。
最后,你需要就是否建议将巧克力纳入自行车手的饮食中提出建议。你可以在任务本身中找到结果、原始研究的参考文献以及更具体的说明。
同行评审的价值
这项任务的最大价值在于你提交备忘录之后。你将有机会体验评审几位同学的作业。你将看到他们如何很好地处理和解释某些结果,而其他方面可能解释得不够好。
我们发现,收到深思熟虑反馈的学习者能够更准确地重新评估自己的理解。因此,请提供你希望得到的那种评论。请提供周到、有益、礼貌且专业的反馈。
感谢收听本次概述。祝你享受这次巧克力与骑行的同行评审体验。
重要提醒
请记住,你不应该在骑自行车时吃巧克力,务必小心。

总结

本节课中,我们一起学习了如何通过一个具体的实践任务——解读关于巧克力摄入对骑行表现影响的研究——来应用统计推断知识。我们明确了任务背景、你的具体职责(撰写解释性备忘录),并强调了同行评审环节对于深化理解的重要价值。
60:优质研究问题对可靠推断的重要性 🔍


在本节课中,我们将探讨如何定义优质的研究问题,以及这对进行可靠的统计推断为何至关重要。我们将通过具体示例,学习如何构建清晰的研究问题,并了解如何根据问题选择合适的统计方法。
上一节我们强调了研究问题的重要性,本节中我们来看看如何构建一个优质的研究问题。一个定义良好的研究问题是所有高质量统计分析的基础。如果缺乏清晰的问题,即使拥有数据并运行了分析,得出的推断也可能偏离目标,导致错误的见解和决策。
以下是构建优质研究问题时需要考虑的四个关键方面:
- 明确目标总体:清晰、简洁地陈述研究关注的目标总体是谁、是什么、在何时何地。
- 区分描述性与分析性问题:描述性问题旨在估计一个参数(如均值),而分析性问题旨在量化变量之间的关系。
- 评估问题的新颖性与知识增量:明确该问题是否已被研究过,以及新的研究将为现有知识体系增添什么新内容。
- 确保变量的可测性与测量恰当性:确认感兴趣的变量是否易于获取或测量,以及所使用的测量工具是否能准确捕捉我们想要衡量的概念。
上一节我们列出了优质研究问题的标准,本节中我们通过一个具体例子来看看它们的应用。让我们比较一个“差”的问题和一个“好”的问题。
一个差的研究问题示例:
“学业表现与暑期实习成功之间有什么关系?”
这个问题表面上看似是分析性问题,但根据我们刚讨论的标准来剖析,它存在严重缺陷:
- 目标总体:未明确。
- 问题类型:分析性(这是其唯一明确的方面)。
- 知识增量:未说明。
- 变量测量:“学业表现”和“实习成功”的定义与测量方式完全模糊。
这个问题只满足了四个关键属性中的一个,因此无法指导有效的统计分析。
一个好的研究问题示例:
“对于2015-2016年美国18岁及以上的西班牙裔成年人,男性和女性在平均收缩压上是否存在差异?”
让我们用四个标准来评估这个问题:
- 目标总体:明确为“2015-2016年美国18岁及以上的西班牙裔成年人”。
- 问题类型:清晰的描述性比较(比较两组的均值)。
- 知识增量:虽未直接说明,但通过限定年份和人群,暗示了可能产生针对特定时期的新知识。
- 变量测量:“性别”(男/女)和“收缩压”都是定义清晰、可测量的变量。
额外的细节使研究目标非常明确,这是一个我们可以在此基础上选择合适统计程序的优质问题。
上一节我们定义了一个优质的研究问题,本节中我们来看看如何根据它来选择统计方法。优质的问题能让我们轻松地选择合适的推断程序。
假设我们拥有从目标总体(2015-2016年美国18岁及以上西班牙裔成年人)中抽取的一个样本数据(例如NHANES 2015-2016数据)。我们的研究问题是比较男性和女性在连续变量“收缩压”上的平均值。
给定这些信息,我们很可能选择的推断程序是独立样本T检验。这种检验允许我们在两个独立组之间比较一个连续变量的均值。
代码示例:独立样本T检验的基本思路
# 假设 df 是包含‘gender’和‘systolic_bp’列的数据框
# 将数据分为男性组和女性组
male_bp = df[df[‘gender‘] == ‘Male‘][‘systolic_bp‘]
female_bp = df[df[‘gender‘] == ‘Female‘][‘systolic_bp‘]
# 使用统计库(如scipy)执行独立样本t检验
from scipy import stats
t_statistic, p_value = stats.ttest_ind(male_bp, female_bp, nan_policy=‘omit‘)

一个重要说明:在本课程介绍统计程序应用基础时,为简化起见,我们将假设NHANES数据来自一个简单随机样本。然而,在实际中,像NHANES这样的概率样本具有复杂的抽样设计(如分层、聚类),在推断程序中通常需要考虑这些特征。我们将在后续课程中重新讨论这些例子,并纳入复杂抽样设计特征进行分析。
本节课中我们一起学习了定义优质研究问题的重要性及其核心要素。我们了解到,一个清晰、具体的研究问题需要明确目标总体、区分问题类型、考虑知识增量并确保变量可测。通过对比“差”与“好”的问题示例,我们看到了具体细节如何提升问题的质量。最后,我们了解到优质的研究问题能直接引导我们选择合适的统计方法(如独立样本T检验),并为获得可靠的统计推断奠定坚实基础。记住,在将任何统计程序应用于数据之前,首先确保你正在回答一个精心构建的研究问题。
61:单变量描述性推断——置信区间实例 📊

在本节课中,我们将学习如何为单变量构建置信区间,以进行描述性推断。我们将通过两个具体实例,分别演示如何为总体比例和总体均值计算95%置信区间。
概述
上一节我们介绍了描述性推断的基本概念。本节中,我们来看看如何应用这些概念,通过置信区间对总体参数进行推断。我们将遵循清晰的步骤:首先计算点估计,然后计算标准误,最后构建置信区间。
实例一:为比例构建置信区间
我们的研究问题是:在2015-2016年,美国18岁及以上非西班牙裔非洲裔美国人中,收缩压大于130毫米汞柱的比例是多少?这个比例可以量化高血压的患病情况。
我们将演示的推断方法是:计算该总体比例的95%置信区间估计。请记住,置信区间是针对总体参数(即我们试图估计的量),而不是针对估计值本身。
以下是构建置信区间的三个步骤:
第一步:估计总体比例
我们需要计算用于构建置信区间的点估计。在NHANES数据中,拥有有效收缩压数据的非西班牙裔非洲裔受访者样本量为1135人。其中,有465人的收缩压大于等于130毫米汞柱。
因此,样本比例 p̂ 的计算公式为:
p̂ = 465 / 1135 ≈ 0.4097
我们的点估计是,在2015-2016年,所有此类非洲裔成年人中约有40.97%的人收缩压大于130毫米汞柱。
第二步:计算点估计的标准误
标准误衡量了抽样分布的变异性。我们使用以下公式计算比例的标准误 SE(p̂):
SE(p̂) = sqrt( p̂ * (1 - p̂) / n )
代入我们的值:
SE(p̂) = sqrt( 0.4097 * (1 - 0.4097) / 1135 ) ≈ 0.0146
这个值0.0146是我们对抽样分布标准差的估计。
第三步:构建置信区间
对于大样本的95%置信区间,我们使用乘数1.96。置信区间的下限和上限计算公式为:
下限 = p̂ - 1.96 * SE(p̂)
上限 = p̂ + 1.96 * SE(p̂)
代入计算:
下限 = 0.4097 - 1.96 * 0.0146 ≈ 0.3811
上限 = 0.4097 + 1.96 * 0.0146 ≈ 0.4383
因此,总体比例的95%置信区间为 (0.3811, 0.4383)。
关于置信区间的说明
“95%置信”的含义是:如果我们用相同的方法(点估计±边际误差)从同一总体中反复抽取样本并构建区间,那么有95%的区间会包含真实的总体比例。
推断示例
如果假设的总体比例为0.35,由于该值不在我们的置信区间(0.3811, 0.4383)内,我们可以认为0.35不是一个合理的值。这提供了证据表明,非洲裔成年人中收缩压大于130的比例实际上高于0.35。
实例二:为均值构建置信区间
在了解了比例的推断后,现在我们来看如何为均值构建置信区间。
我们的新研究问题是:在2015-2016年,美国18岁及以上非西班牙裔非洲裔美国人收缩压的均值是多少?我们将同样提供一个95%的置信区间估计。
以下是构建均值置信区间的步骤:
第一步:估计总体均值
样本量同样为1135人。我们计算样本中所有收缩压测量值的均值。
样本均值 x̄ 的计算结果为128.252毫米汞柱。
因此,我们对总体均值的点估计是128.252毫米汞柱。
第二步:计算点估计的标准误
首先,我们计算样本中1135个血压测量值的标准差 s,结果为19.958。这是原始数据的标准差。
然后,我们使用以下公式计算均值 x̄ 的标准误 SE(x̄):
SE(x̄) = s / sqrt(n)
代入计算:
SE(x̄) = 19.958 / sqrt(1135) ≈ 0.592 毫米汞柱
这个0.592就是我们估计的抽样分布的标准差。
第三步:构建置信区间
再次使用乘数1.96来构建95%置信区间。计算公式为:
下限 = x̄ - 1.96 * SE(x̄)
上限 = x̄ + 1.96 * SE(x̄)
代入计算:
下限 = 128.252 - 1.96 * 0.592 ≈ 127.091
上限 = 128.252 + 1.96 * 0.592 ≈ 129.413
因此,总体均值的95%置信区间为 (127.091, 129.413)。
推断示例
如果假设的总体均值为128毫米汞柱,由于128这个值落在我们的置信区间(127.091, 129.413)之内,我们认为128是一个合理的值,考虑到抽样变异性。

总结
本节课中我们一起学习了如何为单变量(比例和均值)构建置信区间。置信区间的优势在于,它能在给定的置信水平下,为我们感兴趣的描述性统计量(如总体均值或比例)提供一个合理的取值范围,而不仅仅是接受或拒绝某个特定的假设值。在后续课程中,我们将探讨另一种推断方法——假设检验。
62:单变量描述性推断:假设检验实例 📊

在本节课中,我们将学习如何使用假设检验方法,基于单个变量的描述性统计量(如比例和均值)对总体参数进行推断。我们将通过两个具体实例——检验总体比例和检验总体均值——来详细讲解假设检验的四个标准步骤。
概述
上一节我们介绍了使用置信区间对总体参数进行描述性推断。本节中,我们来看看如何使用假设检验来完成类似的任务。我们将通过两个研究问题来演示:一个是关于总体比例的单样本检验,另一个是关于总体均值的单样本检验。
实例一:单样本比例检验
我们的第一个研究问题是:在2015-2016年,美国18岁及以上非西班牙裔非洲裔美国人中,收缩压大于130 mmHg的比例是否为33%(即三分之一)?或者说,总体比例是否与三分之一不同?
我们的推断方法是:执行一个双尾的单样本假设检验,以决定是拒绝还是无法拒绝“总体比例等于0.33”这个零假设。
步骤一:设定假设与显著性水平
首先,我们必须明确定义零假设和备择假设。
- 零假设 (H₀):总体比例 P = 0.33。
- 备择假设 (H₁):总体比例 P ≠ 0.33(即可能大于或小于0.33)。
我们还需要设定显著性水平(即第一类错误率)。我们将其设定为 α = 0.05。这意味着,如果零假设实际上为真,我们错误地拒绝它的概率是5%。
步骤二:计算检验统计量
假设我们有一个简单的随机样本。根据上节课的数据,样本比例的点估计值为 p̂ = 465 / 1135 ≈ 0.4097。
为了检验我们的零假设,我们构造一个Z统计量。其公式如下:
Z = (p̂ - P₀) / √[P₀(1 - P₀) / n]
其中,P₀ 是零假设中的比例值(0.33),n 是样本量。请注意,我们在计算标准误时使用的是零假设下的值(0.33)。
将数值代入公式,我们得到 Z ≈ 5.71。这意味着,我们的点估计值距离零假设值(0.33)超过了5个标准误,这是一个相当大的距离。
步骤三:确定P值
P值是在零假设为真的前提下,观察到当前检验统计量(Z=5.71)或更极端情况的概率。
由于我们的备择假设是双尾的(P ≠ 0.33),我们需要计算Z统计量大于5.71或小于-5.71的概率。在标准正态分布下,这个概率几乎为0。
步骤四:做出决策
由于计算出的P值(≈0)远小于我们预先设定的显著性水平(α=0.05),我们拥有足够的证据反对零假设。
因此,我们拒绝零假设。 基于0.4097的样本比例,我们支持总体比例不等于0.33的结论,并且实际总体比例很可能远大于0.33。
实例二:单样本均值检验
现在,我们将相同的假设检验基本思路应用于均值。我们的研究问题是:2015-2016年,美国18岁及以上非西班牙裔非洲裔美国人的收缩压均值是否等于128 mmHg?或者说,总体均值是否与128不同?
步骤一:设定假设与显著性水平
首先,明确定义假设。
- 零假设 (H₀):总体均值 μ = 128 mmHg。
- 备择假设 (H₁):总体均值 μ ≠ 128 mmHg。
同样,我们选择显著性水平 α = 0.05。
步骤二:计算检验统计量
根据上节课,样本均值的点估计值为 x̄ = 128.252 mmHg,样本标准差 s = 19.958,样本量 n = 1135。
我们使用t统计量,其公式如下:
t = (x̄ - μ₀) / (s / √n)
其中,μ₀ 是零假设中的均值(128)。计算得到的 t ≈ 0.425。这意味着我们的点估计值距离零假设值(128)不到半个标准误,非常接近。
步骤三:确定P值
P值是在零假设为真的前提下,观察到t=0.425或更极端情况的概率。
这是一个双尾检验,我们需要计算自由度为 n-1 = 1134 的t分布中,统计量大于0.425或小于-0.425的概率。计算得到的 P值 ≈ 0.671。
步骤四:做出决策
由于计算出的P值(≈0.671)远大于显著性水平(α=0.05),我们没有足够的证据反对零假设。
因此,我们无法拒绝零假设。 请注意,我们并不是“接受”零假设,而是基于当前数据,没有发现足以拒绝它的证据。128 mmHg仍然是总体均值一个合理的可能值。
总结
本节课中,我们一起学习了如何对单个变量的描述性统计量(比例和均值)进行假设检验。我们通过两个实例,完整演练了假设检验的四个核心步骤:
- 设定零假设、备择假设和显著性水平。
- 根据样本数据计算检验统计量(Z统计量或t统计量)。
- 确定P值,即当前证据的极端程度。
- 比较P值与显著性水平α,做出拒绝或无法拒绝零假设的决策。

我们看到了比例检验的结果是拒绝零假设,而均值检验的结果是无法拒绝零假设,这体现了假设检验如何根据数据对研究问题给出量化的答案。
后续内容预告
我们已经讨论了针对描述性参数的置信区间法和假设检验法。接下来,我们将探讨如何对不同亚组之间的差异进行推断,例如比较两个组的均值差或比例差。我们将学习如何为这些差异构建置信区间,以及如何进行相应的假设检验。
63:两独立样本均值比较实例 📊


在本节课中,我们将学习如何比较两个独立子组的均值。我们将通过一个具体的实例,介绍如何构建置信区间和进行假设检验,以判断两个群体的均值是否存在显著差异。课程将涵盖核心概念、假设检验步骤,并讨论如何检查分析中的关键假设。
概述
上一节我们介绍了总体参数的估计。本节中,我们来看看如何比较两个独立子组的均值。我们将以2015-2016年美国非裔成年人的收缩压数据为例,比较男性和女性的平均收缩压是否存在显著差异。
我们将采用两种推断方法:为两个均值的差异构建置信区间,以及进行双样本T检验。同时,我们会重点检查分析背后的关键假设。
研究问题与数据
我们的研究问题是:在2015-2016年居住在美国的非裔成年人中,男性和女性的平均收缩压是否存在显著差异?
我们假设NHANES数据是从目标人群中抽取的一个简单随机样本。
以下是样本数据的描述性统计:
- 男性样本:均值 = 131.01,标准差 = 20.59,样本量 = 536。
- 女性样本:均值 = 125.79,标准差 = 19.15,样本量 = 599。
我们得到的点估计是样本均值的差异:131.01 - 125.79 = 5.22 mmHg。据此估计,男性非裔成年人的平均收缩压比女性高5.22 mmHg。但我们需要判断这个差异是否具有统计显著性。
检查分析假设
在进行正式推断前,我们需要检查数据是否满足所用统计方法的关键假设。
以下是需要检查的方面:
- 正态性假设:我们假设每个子组中的收缩压测量值服从正态分布。通过观察直方图和正态Q-Q图,我们发现男性和女性的数据都存在右偏,不完全符合正态分布。但由于样本量较大,中心极限定理可以保证我们的检验方法对此具有一定的稳健性。
- 等方差假设:我们假设两个子组(男性和女性)的收缩压方差相同。通过并排箱线图观察,男性的数据似乎有稍高的变异性。因此,等方差的假设可能存疑,我们需要在分析中检验结果的稳健性。
方法一:构建均值差异的置信区间
我们首先为两个总体均值的差异构建一个95%的置信区间。置信区间的通用公式为:
点估计值 ± 乘数 × 差异的标准误
根据是否假设两个子组的标准差相同(即合并方差),标准误的计算方式不同。
以下是两种假设下的结果:
- 假设等方差(合并标准差):95%置信区间为 (2.91, 7.53) mmHg。
- 假设异方差(不合并标准差):95%置信区间为 (2.90, 7.54) mmHg。
两个区间都非常接近,且都不包含0。0代表两个均值无差异。因此,我们有证据表明男性和女性的平均收缩压存在显著差异,男性更高。这个结论对可能的异方差情况是稳健的。
方法二:进行双样本T检验
接下来,我们使用假设检验的方法来推断均值差异。
第一步:设定假设
- 零假设 (H₀):男性与女性的总体均值相等。
- 备择假设 (H₁):男性与女性的总体均值不相等(双尾检验)。
我们设定显著性水平 α = 0.05。
第二步:计算检验统计量与P值
检验统计量 T 的计算公式为:
T = (样本均值差 - 零假设下的差值) / 均值差的标准误
以下是两种方差假设下的检验结果:
- 假设等方差:T = 4.436,自由度 = 1133,P值 < 0.001。
- 假设异方差:T = 4.417,P值 < 0.001。
两种情况下,P值都远小于0.05。因此,我们拒绝零假设,得出结论:男性和女性的平均收缩压存在显著差异。检验结果对等方差假设的潜在违反是稳健的。
关于正态性假设的进一步探讨
由于我们的数据存在偏态,我们担心违背正态性假设会影响T检验的结果。为此,我们可以使用一种不依赖正态分布假设的非参数检验——曼-惠特尼U检验。
该检验比较的是两个子组数据分布的中位数(或更广义的“位置”),而非均值。
对同一数据执行曼-惠特尼U检验,得到的P值同样小于0.001。这为我们提供了非常强的证据,拒绝“两个分布位置相同”的零假设。这表明,我们关于“两组中心趋势存在差异”的结论,对正态性假设的违反也是稳健的。
总结
本节课中,我们一起学习了如何比较两个独立样本的均值。
我们通过一个实例,演示了两种推断方法:构建置信区间和进行假设检验(双样本T检验)。我们了解到,在分析前检查数据是否满足正态性和等方差等关键假设非常重要。在本例中,尽管数据略有偏离正态,且方差可能不等,但得益于较大的样本量,我们的主要结论(男性平均收缩压显著高于女性)在不同假设和不同检验方法下均保持稳健。
最后,我们介绍了当正态性假设存疑时,可以使用非参数的曼-惠特尼U检验作为替代方案。

下一节,我们将探讨如何基于配对数据(例如同一个体的左右臂测量值、干预前后的测量值)来比较两个均值。
64:两配对样本均值比较实例 📊

在本节课中,我们将学习如何比较两个配对样本的均值。我们将通过一个具体的实例,使用置信区间和配对样本T检验等方法,来探究两个相关的测量值之间是否存在显著差异。
概述
我们将分析一个来自NHANES(美国国家健康与营养调查)数据集的实际案例。研究人员希望验证数据集中收集的血压测量值在不同亚组中是否可靠。具体而言,我们将关注2015-2016年间居住在美国的西班牙裔成年女性,探究她们两次测量的收缩压是否存在显著差异。
研究问题与数据
我们的研究问题是:对于2015-2016年间居住在美国的西班牙裔成年女性,两次测量的收缩压是否彼此存在显著差异?
我们的预期是,如果这两次测量来自同一个体且是可靠的,那么它们不应该存在系统性差异。
我们将采用以下三种推断方法来解答这个问题:
- 为均值差异构建一个置信区间。
- 对均值差异进行配对样本T检验。
- 检查这些方法背后的假设是否成立。
方法一:构建均值差异的置信区间
首先,我们需要计算该亚组中每位女性两次收缩压测量值的差异。我们将差异定义为第二次测量值(BP2)减去第一次测量值(BP1)。
以下是计算步骤:
- 计算每位女性的差异值。
- 计算所有差异值的平均值(样本均值差)。
- 计算所有差异值的标准差(样本标准差)。
对于我们的数据,计算结果如下:
- 样本均值差 = -0.977 mmHg
- 样本标准差 = 4.848 mmHg
- 样本量 = 911
这意味着,我们的最佳点估计表明,平均而言,第一次收缩压测量值比第二次高出约0.977 mmHg。这个差异在医学上可能具有意义。
检查数据与假设
在继续之前,我们需要检查数据是否符合所用方法的假设。
以下是两个关键的诊断图:
- 差异值的直方图:显示差异值的分布。我们的数据大致以0为中心,但整体趋势略向左偏(负值更多)。
- 正态Q-Q图:用于评估差异值是否服从正态分布。我们的数据点略微偏离45度参考线,表明存在轻微偏离正态分布的情况。
然而,由于我们的样本量很大(n=911),根据中心极限定理,我们可以放宽对正态分布的严格要求。尽管如此,我们仍将在后续分析中检验结果的稳健性。
此外,我们还需要确认两次测量值是相关的(这是使用配对样本方法的前提)。通过绘制BP2与BP1的散点图,我们发现两者存在强线性相关,皮尔逊相关系数高达 0.966。这强有力地支持了使用配对样本程序(如配对样本T检验)的合理性。
计算置信区间
现在,我们基于点估计和标准误来构建总体均值差的95%置信区间。
计算公式如下:
置信区间 = 样本均值差 ± (临界值 * 标准误)
其中:
- 标准误 = 样本标准差 / √样本量 = 4.848 / √911 ≈ 0.161 mmHg
- 对于95%置信区间,临界值(t值)约为 1.96
代入计算:
置信区间 = -0.977 ± (1.96 * 0.161) = (-1.292, -0.662) mmHg
结果解读:这个95%置信区间为(-1.292, -0.662),不包含0。这意味着,在考虑了抽样变异后,总体均值差的合理取值范围在-1.292到-0.662之间。由于0不在这个区间内,我们有证据表明,对于这个特定亚组,第一次测量值系统地高于第二次测量值。
方法二:执行配对样本T检验
上一节我们通过置信区间得出了初步结论,本节我们将使用正式的假设检验——配对样本T检验来验证这个结论。
我们的假设是:
- 零假设 (H₀):总体均值差 = 0(两次测量值平均而言相同)。
- 备择假设 (H₁):总体均值差 ≠ 0(两次测量值平均而言不同)。这是一个双尾检验。
我们设定显著性水平 α = 0.05。
检验结果如下:
- t 统计量 = -6.082
- 自由度 = 910 (样本量 - 1)
- p 值 < 0.001
由于p值远小于0.05,我们拒绝零假设。这为“两次收缩压测量值的总体均值存在显著差异”提供了强有力的统计证据,与置信区间的结论一致。

方法三:考虑非参数检验(稳健性检查)
之前我们注意到数据有轻微偏离正态分布。虽然大样本下T检验相对稳健,但作为严谨的分析,我们可以使用不依赖于正态分布假设的非参数检验。
配对样本T检验的非参数对应方法是 Wilcoxon 符号秩检验。它检验的是差异值的中位数是否为0,而非均值。
以下是该检验的结果:
- p 值 < 0.001
Wilcoxon检验同样给出了极显著的p值,导致我们拒绝“两次测量值中位数相同”的零假设。
结论:无论我们使用参数方法(配对T检验)还是非参数方法(Wilcoxon检验),都得到了一致的结论。这表明,我们关于“两次测量值存在显著差异”的发现,对于正态性假设的潜在违反是稳健的。
总结与下节预告
在本节课中,我们一起学习了如何比较两个配对样本的均值。我们通过一个血压测量的实例,逐步演示了:
- 计算差异并检查数据(散点图、直方图、Q-Q图)。
- 为均值差异构建置信区间并进行解读。
- 执行配对样本T检验。
- 使用Wilcoxon符号秩检验来验证结论对分布假设的稳健性。
所有分析都一致表明,对于所研究的西班牙裔成年女性群体,第一次收缩压测量值显著高于第二次。这提示在NHANES数据收集中可能存在需要探究的系统性因素。
在下一讲中,我们将把焦点从均值比较转向比例比较,学习如何基于两个独立样本比较其比例。
65:两独立样本比例比较实例 📊

在本节课中,我们将学习如何比较两个独立样本的比例,而不是均值。我们将通过一个具体的实例,来演示如何构建比例差异的置信区间、执行卡方检验,并讨论在小样本情况下的注意事项。
概述
我们将分析一个研究问题:在2015-2016年期间,美国80岁及以上的西班牙裔老年人口中,男性和女性的吸烟比例是否存在显著差异。我们将使用置信区间和假设检验两种方法进行推断,并特别关注小样本对分析结果的影响。
数据与点估计
首先,我们来看一下数据。在这个特定的亚人群中,我们有以下样本信息:
- 男性:样本量
n_male = 16,吸烟比例p_male = 0.565(56.5%)。 - 女性:样本量
n_female = 32,吸烟比例p_female = 0.25(25%)。
我们的最佳点估计是样本比例之差:
公式: p_male - p_female = 0.565 - 0.25 = 0.315
这个结果可以解释为:我们估计在2015-2016年,所有西班牙裔老年男性中的吸烟者比例比女性高出31.5个百分点。请注意,这不是说高出31.5%,而是比例绝对值的差异。
方法一:构建比例差异的置信区间
上一节我们得到了点估计,本节中我们来看看如何围绕这个估计构建一个置信区间,以评估其不确定性。
在构建置信区间前,我们需要检查一些关键假设:
- 抽样分布的正态性:由于两个组的样本量都很小(16和32),我们无法依赖中心极限定理来保证抽样分布的正态性。这个假设很可能不成立。
- 每组中成功与失败的次数:理想情况下,每组中吸烟者和非吸烟者都应至少各有10人。由于样本量小,这个条件不满足,尤其是在男性组。
- 样本独立性:男性和女性是两个互斥的群体,因此两个样本是独立的。
- 组内观测独立性:我们暂时假设每组内的个体观测是相互独立的。
尽管存在假设问题,我们仍先按常规方法计算一个95%的置信区间。
以下是计算步骤:
- 计算比例差异的标准误估计值:
公式:SE = sqrt( [p_male*(1-p_male)/n_male] + [p_female*(1-p_female)/n_female] )
代入数据:SE ≈ 0.146 - 确定临界值(对于95%置信区间,使用
z* = 1.96)。 - 计算置信区间:
公式:(p_male - p_female) ± (z* * SE)
代入数据:0.315 ± (1.96 * 0.146)
得到区间:(0.027, 0.598)
这个95%置信区间不包含0(0意味着无差异),这提示两个总体的吸烟比例可能存在差异。但请注意,区间的下限(0.027)非常接近0,表明证据并不十分强有力。
小样本的精确置信区间
考虑到小样本可能违反正态性假设,我们可以使用一种计算量更大、但不那么依赖该假设的“精确”方法。
运行相应的Python代码(此处不展示具体代码,课程中会提供)后,我们得到精确的95%置信区间为 (0.015, 0.574)。
这个结果与基于正态假设得到的区间非常相似,0仍然不在区间内,但下限同样接近0。这进一步证实了我们有证据表明存在差异,但证据强度有限。
方法二:卡方检验
除了置信区间,我们还可以使用卡方检验来直接检验两个比例是否相等。上一节我们评估了区间估计,本节中我们来看看假设检验的方法。
我们的假设是:
- 零假设 (H₀):男性和女性的总体吸烟比例相等。
- 备择假设 (H₁):男性和女性的总体吸烟比例不相等(双尾检验)。
我们设定显著性水平为 α = 0.05。
在进行卡方检验前,需要检查一个关键假设:在2x2列联表的每个单元格中,零假设下的期望频数应至少为5。
以下是计算期望频数的过程:
- 总样本量:
16 + 32 = 48 - 总吸烟人数:
9(男)+ 8(女)= 17 - 总吸烟比例:
17 / 48 ≈ 0.354 - 男性期望吸烟人数:
16 * 0.354 ≈ 5.66 - 女性期望吸烟人数:
32 * 0.354 ≈ 11.33
所有四个单元格(男吸烟、男不吸烟、女吸烟、女不吸烟)的期望频数均大于5,因此该假设勉强满足。
运行卡方检验(通过Python代码)后,我们得到:
- 检验统计量:
χ² = 4.554 - 自由度:
1(对于2x2表,自由度为(行数-1)*(列数-1) = 1*1) - P值:
0.033
由于P值 (0.033) 小于显著性水平 (0.05),我们在5%的水平上拒绝零假设,认为两个比例存在显著差异。然而,如果我们将显著性水平设定为更严格的1% (α=0.01),则不会拒绝零假设。这再次说明证据的强度是有限的。
小样本的精确检验:费希尔精确检验
为了应对小样本问题,我们可以使用费希尔精确检验作为卡方检验的替代方案。
运行费希尔精确检验后,得到的P值为 0.054。

这个P值略高于0.05的常规阈值。如果我们严格遵循5%的显著性水平,将无法拒绝零假设。这凸显了小样本分析中结论对检验方法选择的敏感性。
结论与讨论
本节课中我们一起学习了如何比较两个独立样本的比例。结合本案例,我们可以得出以下结论:
在2015-2016年美国80岁及以上的西班牙裔老年人口中,我们有微弱的证据表明男性和女性的吸烟比例存在差异。但必须强调,这个结论是基于非常小的样本得出的,我们进行统计推断的把握度(统计功效)很低。
以下是需要牢记的几点:
- 效应大小 vs. 统计显著性:31.5个百分点的差异在实践中是一个非常大的效应。如果这个差异在更大的样本中依然存在,它几乎肯定会被判定为统计显著。这提醒我们要区分统计显著性和实际意义。
- 小样本的影响:小样本导致了我们分析中的不确定性大大增加。这就是为什么我们使用了精确置信区间和费希尔精确检验等稳健方法,并且最终得到的证据强度较弱。
- 样本量的作用:如果未来能在更大的样本中观察到类似的比例差异,那么得出存在显著差异的结论将会有力得多。
总之,虽然本案例中统计证据的强度有限,但观察到的差异本身具有重要的实际意义,值得在可能的情况下通过更大规模的研究进一步验证。
66:欢迎来到《使用Python拟合统计模型》 🎉


在本课程中,我们将学习如何使用Python将统计模型拟合到数据。这是“使用Python的统计学”系列专项课程中的第三门课。每门课程都建立在之前课程的知识基础上,帮助我们全面理解统计学的本质及其应用能力,同时让我们能够使用Python实践所学内容。
课程结构概览 📚
本课程分为四个部分。
上一节我们介绍了课程的整体目标,本节中我们来看看具体的课程安排。
以下是四个部分的主要内容:
-
第一部分:模型拟合基础与Python环境
- 探讨将模型拟合到数据的真正含义。
- 了解需要考虑的因素,例如变量类型及其在研究中的作用。
- 学习如何处理缺失数据。
- 理解如何在模型拟合中考虑研究设计。
- 明确目标定义的重要性以及如何衡量预测的不确定性。
- 在计算方面,我们将初步了解Python的统计生态系统,并使用Jupyter笔记本来指导我们的建模实践。
-
第二部分:线性与逻辑回归
- 开始学习两种基本类型的回归模型:线性回归和逻辑回归。
- 学习如何拟合这些模型,如何评估其拟合优度,以及如何在数据背景下解释结果。
- 我们将使用
cartwheel数据集进行实践:根据身高预测侧手翻距离;在逻辑回归部分,我们将根据年龄预测一个人完成侧手翻的概率(这是一个二元结果变量)。 - 我们将聆听同事讨论关联性与因果性之间的区别。
- 通过审视数据源,我们将看到数据可视化的重要性。
-
第三部分:多水平模型与边际模型
- 重点学习多水平模型和边际模型。
- 了解随机效应如何解释变量间的依赖性。
- 广义估计方程技术将帮助我们处理这些边际模型。
- 我们将看到的例子包括:预测一个人曾经吸烟的概率;以及在一项关于人们对警察看法和信任度的研究中,考察访谈员效应。
-
第四部分:专题拓展
- 我们将广泛涉猎一系列专题。
- 内容包括不同的抽样设计,以及在建模过程中是否纳入调查权重。
- 我们将看到一些随机森林的例子。
- 并对贝叶斯技术进行深入的案例研究,其中会用到名为
Stan的贝叶斯建模语言。
学习方式与资源 💻
在整个课程中,你将有机会通过多种方式评估自己的知识掌握情况。
我们将提供大量阅读材料和资源,供你对这些不同概念进行更深入的探索。
同时,你还会获得一些动手实践的机会,例如操作一些交互式网络小程序。
当然,本课程将包含大量基于Python的教程,以指导我们完成整个建模实践过程。
你将听到我们多位团队成员的分享,了解他们在将统计模型拟合到数据方面的见解和观点。
本节课中,我们一起学习了《使用Python拟合统计模型》这门课程的整体框架、四个核心部分的内容划分,以及丰富的学习资源与互动方式。接下来,我们将深入第一部分,开始探索模型拟合的基础概念。
67:使用Python拟合统计模型指南 📊


在本课程中,我们将学习如何使用Python软件将统计模型拟合到数据集。课程内容基于专项课程前两门课的知识,假设你已熟悉使用Python进行数据可视化和管理,了解数据来源的重要性,并能使用Python进行假设检验和基本描述性分析。我们将在此基础上,进一步学习如何基于拟合到数据的统计模型,对变量间关系进行推断。
🎯 课程概述与学习指南
上一节我们介绍了本课程的目标,本节中我们来看看如何高效学习这门课程。本课程将大量使用Jupyter Notebook来演示和练习模型拟合概念。
以下是成功学习本课程的三条核心指南:
- 指南一:边看边练。我们强烈建议你在观看视频讲座的同时,在Jupyter Notebook中练习Python模型拟合示例。你应该频繁暂停视频,在Notebook中尝试拟合模型,以巩固所学概念。例如,你可以在笔记本电脑上播放讲座视频,同时在台式机上打开Jupyter Notebook进行练习。
- 指南二:善用互动问题。我们准备了多种视频内问题(IvyQs)来强化视频讲座中的概念。这些问题能为你提供额外的输出结果解读练习,并巩固讲座中强调的许多概念点。请仔细阅读为你准备的详细答案。
- 指南三:积极参与讨论。请确保在遇到问题时及时发帖,并经常查看常见问题存档和讨论论坛。有很多人乐于帮助你学习这些不同的建模概念。
📚 课程资源与进阶内容
上一节我们介绍了核心学习指南,本节中我们来看看课程提供的具体资源以及最后的进阶主题。
本课程为你准备了多种学习资源:
- 案例研究Notebook:逐步讲解示例。
- 练习Notebook:让你实际练习使用Python拟合模型。
在本课程的最后一周,我们将介绍贝叶斯统计分析。这是你在本专项课程中将遇到的最进阶的内容。贝叶斯分析是一种流行且强大的统计分析方法,但它与前两门课程中讨论的方法有所不同。我们强烈建议你在开始学习这部分内容之前,先阅读一篇提供简单入门概述的博客文章。
我们也欢迎你提出关于本课程的问题、评论和反馈。我们始终致力于让这些材料更具吸引力和更易于理解。请不要犹豫在讨论论坛中提问,或向讲师提出任何更复杂的问题。
🏁 总结
在本节课中,我们一起学习了“使用Python拟合统计模型”课程的指南和资源。我们明确了课程目标,即基于统计模型对变量关系进行推断。我们掌握了三条核心学习指南:边看边练、善用互动问题以及积极参与讨论。最后,我们了解了课程提供的案例与练习Notebook,并预告了最后关于贝叶斯统计分析的进阶内容。


现在,请开始你的Python统计模型拟合之旅,并享受学习的乐趣。
68:拟合模型至数据的含义解析 📊

在本节课中,我们将学习“拟合模型至数据”这一核心概念。我们将探讨为何要拟合模型、如何指定和拟合参数模型,并通过一个具体示例来演示整个过程。课程最后,我们还将讨论如何评估模型拟合的好坏。
概述:什么是拟合模型至数据? 🤔
当我们说“拟合模型至数据”时,我们的目标是将统计模型应用于我们收集的数据,以帮助回答研究问题。
需要明确的是,我们不是将数据强行塞入模型,而是根据理论或专业知识指定模型,然后将这些模型拟合到我们收集的数据上。我们数据中的变量遵循特定的分布或关系,而我们拟合的模型旨在描述这些分布或关系。
为何要拟合模型? 🎯
拟合模型通常出于以下几个目的:
- 估计分布特性:我们可能希望估计不同变量的分布特性(可能以其他变量为条件)。例如,估计分布的均值、方差或分位数。
- 总结变量关系:我们可能希望简洁地总结变量之间的关系,并对这些关系做出推断性陈述。
- 进行预测:我们可能希望基于预测变量的值,来预测我们感兴趣的变量的值,并描述这些预测的不确定性。
本课程重点:参数模型 📈
本课程的重点是参数模型。这意味着我们估计的是描述我们感兴趣变量分布的参数。
例如,我们可能假设一个连续变量(如血压或考试成绩)的值服从正态分布。正态分布由均值和方差这两个参数定义。拟合模型的过程,就是根据收集的数据来估计这些参数的值。
我们估计模型参数及其相关的抽样方差,结合这些信息,我们可以对定义模型的参数进行推断(如假设检验、构建置信区间)。
示例:考试成绩与年龄的关系 📚
为了说明如何将统计模型拟合到数据,我们来看一个例子。
假设我们感兴趣的是大学生的某项考试成绩,以及成绩与年龄的关系。
- 结果变量:考试成绩(范围0-8分)。
- 预测变量:年龄(已根据均值和标准差进行了标准化)。
- 研究问题:年龄是否能预测考试成绩?我们有一个理论,认为年龄与成绩之间存在曲线关系(例如,倒U型关系):中等年龄的学生成绩最好,年龄偏小或偏大的学生成绩较差。
我们的目标有两个:
- 估计所有年龄段的边际平均成绩(描述性目标)。
- 估计以年龄为条件的平均成绩,即年龄与平均成绩的关系。
建模方法一:仅均值模型 📉
首先,我们考虑一个仅均值模型。我们假设考试成绩整体上服从一个正态分布,由一个特定的均值(μ)和方差(σ²)定义。
在这个模型中,我们估计两个参数:总体均值 μ 和方差 σ²。我们只对建模整体均值感兴趣。
我们通过一个回归模型来拟合它:
performance = μ + e
其中,e 是随机误差,我们假设 e ~ N(0, σ²)。
模型拟合结果:
- 估计的总体均值 μ = 4.57 分。
- 估计的方差 σ² = 1.82。
评估模型拟合:
我们需要检查误差项服从正态分布的假设。通过绘制残差(观测值减去预测均值)的直方图和正态Q-Q图,我们发现该假设是合理的,正态模型对数据拟合良好。
上一节我们介绍了简单的仅均值模型,本节中我们来看看更复杂的、包含预测变量的条件模型。
建模方法二:条件模型(二次模型) 🔄
对于第二个目标(以年龄为条件),我们相信成绩再次服从正态分布,但其均值由年龄的二次函数定义:
performance = A + B*age + C*age² + e
其中,e ~ N(0, σ²)。
这里有四个待估参数:A, B, C 以及条件方差 σ²。这个二次函数捕捉了我们关于年龄与成绩之间曲线关系的理论。
模型拟合结果:
- A(截距)估计值 = 5.11
- B(一次项系数)估计值 = 0.24
- C(二次项系数)估计值 = -0.26
- 条件方差 σ² 估计值 = 1.29
参数估计值与其标准误的比值(可视为检验统计量)表明这些系数可能都不为零。拟合的二次曲线(图中红色虚线)在散点图上直观地看与数据吻合得很好。
评估模型拟合:
再次检查残差。残差的Q-Q图显示其近似正态分布,且残差与预测值的散点图中,残差大致对称地分布在0附近,方差看起来也相对恒定。这表明模型假设是合理的,模型拟合良好。
不过,我们注意到残差图中仍存在相当程度的变异。这引出一个问题:我们能否做得更好?是否可以加入其他预测变量(如种族、教育背景、社会经济地位)来解释这部分剩余的变异?
反面教材:误设的模型 ❌
现在,让我们思考一个拟合不好的模型。如果我们不依据理论仔细指定模型,错误地假设成绩与年龄是线性关系,会发生什么?
拟合的直线(红色虚线)明显无法捕捉数据中倒U型的趋势。模型拟合看起来很差。

检查其残差与预测值的散点图,会发现残差并非随机对称分布在0周围,而是呈现出明显的曲线模式。这明确指示我们误设了模型关系,未能捕捉数据中真实的曲线关系。当标准化年龄值很低或很高时,模型的预测效果会非常差。
总结 📝
本节课中,我们一起学习了“拟合模型至数据”的核心思想:
- 我们介绍了为数据拟合参数模型并评估模型拟合度的概念。
- 通过一个考试成绩与年龄关系的示例,我们演示了从指定模型(仅均值模型、二次条件模型)到估计参数,再到通过检查残差评估模型拟合的完整流程。
- 我们看到了一个良好拟合的模型(二次模型)其残差应满足模型假设(如正态性、方差齐性),而一个误设的模型(线性模型)会在残差图中表现出明显的系统性问题。
在接下来的课程中,我们将深入探讨不同类型的变量和数据集、不同研究设计对建模的影响,以及拟合模型时各种估计和推断的方法。我们将通过大量具体示例来详细讨论建模的各个方面。
69:统计建模中的变量类型 📊

在本节课中,我们将探讨统计建模中的变量类型。我们将继续概述如何将模型拟合到数据,重点思考我们可能感兴趣的建模变量类型,以及变量类型对我们所拟合模型的影响。作为本讲座的一部分,我们将讨论模型设定中的一些关键概念,并思考在处理不同类型变量时应采取的策略。
🔍 变量类型回顾
在开始之前,我们先回顾一下本系列课程之前学到的概念。在总结数据时,我们需要仔细考虑所收集变量的类型。
我们讨论过分类变量,这类变量取少量离散值。例如性别、种族、政党偏好、地区、事件的二元指标等。对于这类变量,我们需要问:这些变量的类别是否有任何顺序?数字类别是否有有意义的排序,还是它们仅仅是像种族或国家地区这样的离散值?
我们还讨论过连续变量。这类变量可以取许多可能的值。例如身高、年龄、收入、血压。对于这类变量,我们提出的问题是:分布看起来如何?分布的形状是什么?分布的中心在哪里?分布的离散程度如何?该变量是否服从正态分布,或者是否有其他分布可能更适合该连续变量?这些是我们对研究中可能收集到的这两大类变量需要提出的重要问题。
🎯 因变量与自变量
现在,当我们讨论将模型拟合到数据时,我们可以考虑变量的其他分类。在模型拟合中,一个重要的二分法是因变量和自变量。
因变量
因变量,根据你所在领域的不同,也可能被称为结果变量、响应变量、内生变量,或者更一般地称为感兴趣变量。这些是我们想要建模的变量。我们的主要目标是,根据其他自变量,对这些感兴趣变量的分布特征进行建模。换句话说,因变量的分布取决于这些自变量的取值。
自变量
自变量,你可能听到的其他名称包括预测变量、协变量、回归量或外生变量。这些术语都指向同一概念:当我们拟合模型时,用于预测感兴趣因变量取值的变量。我们的目标是,在给定这些自变量取值的条件下,检查我们感兴趣的因变量的分布。
📈 深入理解因变量
我们想要将因变量(作为主要兴趣变量)建模为其他理论上相关的自变量的函数。我们决定在定义因变量的条件分布时包含哪些自变量,这都受到我们的理论和研究问题的指导。我们的研究问题定义了什么是因变量,什么是自变量。
这涉及为因变量选择一个合理的分布。例如,我们可以说,在给定自变量取值的条件下,因变量服从正态分布。这只是一种可能的选择,并非唯一选择。然后,我们将该分布的参数(例如均值或方差)定义为自变量的函数,或条件于自变量。我们在开篇讲座中已经看到了一个例子。
因变量可以是连续的、分类的或二元的。我们根据所收集因变量的类型选择一个合理的分布,然后将该分布的特征建模为自变量取值的函数。
示例:我们可能假设血压服从正态分布,其中平均血压取决于一个人的年龄、身体质量指数和性别。年龄、BMI和性别就是三个自变量。
🧩 深入理解自变量
自变量是理论上与因变量相关的预测因子。我们感兴趣的是估计自变量与因变量之间的关系。在本课程中,我们将重点强调,自变量的选择应基于我们的理论和专业知识。
自变量可能由研究者操纵。例如,在随机实验中,我们可能将被研究的个案随机分配到接受干预或治疗的组,或分配到对照组。在这种情况下,“组别”就是我们为数据考虑的模型中的一个预测变量。
或者,自变量可能只是被观察到的,而非由研究者操纵。在这些类型的观察性研究中,所有变量值都只是被观察到的。在这种情况下,对变量之间的因果关系(即一个变量导致另一个变量)进行推断更加困难。在许多观察性研究中,我们的主要焦点只是描述关系。而在随机实验中,我们更有能力对预测因子(如组别)与感兴趣的因变量之间的关系进行因果推断。
如果自变量是连续的,我们可以估计这些自变量与因变量分布特征之间的函数关系。回想第一讲,我们估计了测试成绩的正态分布特征作为年龄的函数,并拟合了测试成绩随年龄变化的曲线线性模型。
另一方面,如果自变量是分类的,我们可以比较由这些自变量类别定义的组在因变量分布上的差异。我们也将看到一些如何做到这一点的例子。
在处理分类自变量时,最佳实践是避免估计分类变量(例如种族)与我们的感兴趣因变量之间的函数关系。为什么?因为分类自变量的实际数值可能没有任何数值意义。例如,如果我们在数据集中将种族编码为1、2、3、4、5,我们无法真正查看散点图并观察“数值化种族”与“测试成绩”之类的关系,因为这些数字没有意义,它们只是指代种族的独特类别。对于大多数分类自变量,我们的目标是比较各组在因变量分布特性上的差异。
🛡️ 控制变量与缺失数据
控制变量
当我们讨论拟合模型时,可能还会谈到控制变量。我们的目标是估计描述自变量与因变量之间关系的参数。
在随机研究设计中,我们试图确保随机分组(例如,一组是治疗组,另一组是对照组)在其他可能对估计“组别”与因变量关系产生负面影响的混杂变量上是平衡的。
在非随机或观察性设计中,定义自变量的组可能不平衡。随机化是研究设计中使用的一种工具,旨在确保所有可能与因变量相关的其他感兴趣变量在两个随机组(治疗组和对照组)之间是等效的。而在观察性设计中,我们失去了这种控制。
示例:在观察性研究中,男性通常比女性体重更重。一项分析如果研究性别(作为自变量)与另一个与体重相关的因变量之间的关系,可能无法清晰地估计性别与因变量的关系,因为存在其他混杂变量(本例中是体重)可能影响性别与因变量之间的关系。在观察性研究中,控制这种混杂问题更加困难,而随机化是避免这种混杂问题的一种工具。
因此,当我们拟合模型时,我们会包含几个不同的自变量。在上面的例子中,除了性别,我们可能还将体重作为因变量的预测因子,以有效调整这种混杂问题。我们通过包含混杂变量与因变量的关系,来更好地理解在调整了混杂变量取值后,性别与结果之间的关系。
示例:如果我们感兴趣比较男性和女性之间血压(作为因变量)的分布,并且基于我们的专业知识知道体重与血压相关,我们可以在拟合模型中将体重作为控制变量包含进来。从理论角度看,它是一个控制变量,因为这意味着在讨论性别与血压之间的关系时,我们可以控制体重的取值。然后,在模型中包含这个控制变量的情况下,我们可以对给定体重值时的性别-血压关系进行推断。也就是说,在给定相同体重的条件下,男性和女性之间的均值差异是多少?这就是包含这些控制变量以调整混杂的思路,我们将在后续课程中看到许多这样的例子。
缺失数据
在考虑拟合模型中的变量时,另一个关键点是缺失数据。在我们开始将模型拟合到数据之前,对因变量和自变量的分布进行简单的描述性和双变量分析非常重要,其中一个关键方面是检查因变量和自变量上的缺失数据。
列表删除是一个概念,指的是数据集中任何分析单元,只要在任何自变量或因变量上有缺失数据,都将从分析中删除。这通常是我们用于拟合模型的软件(如Python)中的默认设置。这意味着,我们可能有10个不同的自变量和1个因变量,只要这10个自变量中有一个出现一个缺失值,整个分析单元就会被从模型拟合分析中删除。
如果由于这个缺失数据问题而被删除的个案,在某种程度上与最终用于拟合模型的个案存在系统性差异,我们可能会在关系估计中引入偏差,这当然是我们不希望看到的。因此,我们需要仔细考虑,因缺失数据而被删除的单元是否在某种程度上与最终保留下来拟合模型的单元存在系统性差异。
如果在描述性分析中识别出有缺失数据的单元,我们可以比较那些在列表删除中会被删除的缺失数据单元,与那些拥有完整数据、会被保留的单元,在完全观测到的变量上的分布。例如,如果我们对整个收集的样本完全观测到了性别,我们可以比较个案在性别分布上的差异,看看是否有任何明显的不同。这很简单,我们可以使用在课程2中学到的技术,例如使用卡方检验来比较缺失和非缺失个案在性别分布上是否有明显差异。
如果有证据表明存在差异,我们可能需要考虑其他技术来解决这个缺失数据问题。插补是一种可能的方法,我们可以根据数据集中其他变量的值来预测那些有缺失数据的变量的缺失值。这是一种可能的方法,我们将在接下来的系列讲座中重新讨论这个问题。
🔮 下一步:研究设计的影响
在下一讲中,我们将讨论研究设计对我们所拟合模型的影响。回想前两门课程,我们可能有整群抽样、纵向研究、横截面方便样本、志愿者临床试验等。我们使用各种研究设计来收集数据,我们需要思考研究设计对我们所拟合模型的影响。
我们需要认识到,研究设计会影响我们收集数据的特性,而我们为数据拟合的模型需要反映这些特性。举个简单的例子,如果我们随时间从同一个人身上收集同一个因变量的重复测量值,那么同一个体内的这些因变量的重复测量值将是彼此相关的,我们需要在为给定数据集指定的模型中考虑这种相关性。

📝 总结
在本节课中,我们一起学习了统计建模中的变量类型。我们回顾了分类变量和连续变量的基本概念,并深入探讨了因变量和自变量在模型设定中的核心角色。我们了解了如何根据变量类型选择合适的分布,以及如何将分布参数建模为其他变量的函数。我们还讨论了控制变量在调整混杂效应中的重要性,以及处理缺失数据时需要注意的问题,特别是列表删除可能带来的偏差。最后,我们预告了下一讲将探讨研究设计对模型拟合的影响。理解这些变量类型及其在建模中的含义,是构建有效统计模型的基础。
70:不同研究设计生成的数据类型及其影响 📊

在本节课中,我们将学习不同研究设计如何生成不同类型的数据,以及这些设计特征对我们最终拟合的统计模型有何影响。理解数据的来源和生成方式是构建有效模型的关键前提。
上一节我们介绍了理解数据来源的重要性,本节中我们来看看几种常见的研究设计及其对数据特征的影响。
在将统计模型拟合到数据时,理解数据是如何生成的至关重要。数据可能来自精心设计的概率抽样(如整群抽样),也可能来自方便抽样或非概率抽样。数据可能来自纵向研究、简单随机样本,也可能来自自然或有机过程。在开始考虑拟合模型之前,我们必须充分了解数据的来源,并考虑这些研究设计的特征在为我们感兴趣的变量指定模型时是否需要被考虑进去。
那么,当我们将模型拟合到一组数据中的某个特定变量时,为什么这很重要?我们的目标是估计最能描述该变量分布的参数。到目前为止,我们已经介绍了估计因变量(可能以其他自变量的值为条件)的均值和方差的简单例子。但估计感兴趣变量分布的另一个关键方面是:因变量的不同取值可能由于某种原因而彼此相关。通常,不同类型的研究设计会在同一因变量的不同取值之间引入相关性。这可能是我们在指定模型时需要加以考虑的数据特征。
因此,如果生成这些数据的研究设计方面影响了这些参数,我们在拟合模型时就需要考虑这些设计方面。
简单随机样本 📝
我们首先回顾简单随机样本。在课程1讨论不同类型的抽样计划时,我们谈到了这个概念。
从明确定义的总体中进行的简单随机样本(SRS)通常会产生关于感兴趣变量的独立同分布观测值。我们引入的术语IID(独立同分布)意味着:在简单随机样本中收集的所有不同值都彼此独立,并且我们假设感兴趣变量上的这些值来自相同的分布。这就是IID的概念。
当我们为来自简单随机样本的数据拟合模型时,我们为感兴趣的变量选择分布,其重要特性是:我们拥有的该变量数据中的所有观测值都是独立的。因此,我们假设该因变量上的不同取值彼此无关——前提是数据确实来自简单随机样本。
以下是具体示例:
假设我们感兴趣的是测量个体的幸福感。我们在一个简单随机样本中收集了一系列幸福感量表的观测值。我们可能假设幸福感量表上的这些观测值来自一个具有某个均值μ和某个方差σ²的公共正态分布,并且任意两个随机选择的观测值之间的相关性为零。因此,幸福感量表上的所有观测值彼此完全独立,并且遵循相同的正态分布。
如果我们想估计平均幸福感的估计值的标准误,回顾早期课程中的一些例子,我们会计算该标准误,并假设观测值彼此独立。因此,如果确实选择了简单随机样本且这些观测值彼此独立,那么该估计平均幸福感的抽样分布将具有特定的预期形态。
在简单随机样本中,我们最终拥有更多独特的统计信息。因为所有这些观测值都是独立的,所以我们拥有的独特统计信息越多,标准误就越小,抽样分布就越集中。这对我们来说意味着我们有更精确的估计。这无疑是简单随机抽样的一个优点。
根据研究问题的不同,如果我们对建模男性和女性之间平均幸福感的差异感兴趣,我们可能会为数据拟合一个不假设所有观测值都来自同一分布的模型。例如,我们可能会说幸福感得分的正态分布的均值取决于性别。因此,根据我们是男性还是女性,均值会有所不同。正态分布的均值随性别而变化。
但在我们的模型中,一旦以性别为条件,幸福感量表上的所有观测值都是独立的,并且具有相同的方差——这可能是我们模型的一个属性。
整群样本 🏘️
另一种常见的研究设计是整群样本。整群样本产生于生成相关观测值集群的研究设计。这些集群可以是医院、诊所、学校或社区。
因为来自同一自然发生集群的观测值往往彼此相似,所以在为数据拟合模型时,我们需要考虑这种相关性。这与简单随机样本的模型不同。在处理整群样本时,感兴趣因变量的不同取值可能彼此相关,因为这些值来自研究设计中同一集群的个体。
以下是具体示例:
如果研究设计从选定的社区中产生了多个幸福感观测值,那么同一社区内的观测值很可能彼此相关。我们为幸福感指定的模型可能会包含额外的参数,以捕捉这种社区内的相关性。因此,在我们目前考虑的例子模型中,我们允许同一社区内的幸福感观测值彼此相关。在我们之前的例子中,我们只是假设所有观测值都是独立的。但我们将讨论如何为这类相关数据拟合模型。
当我们考虑估计均值μ的标准误时,该标准误将反映这种相关性。回顾我们对复杂样本的讨论,当我们确实有一个整群样本时,我们拥有的独特独立信息较少,因为我们的一些观测值彼此相关。我们没有像在简单随机样本中那样多的独立信息。因此,因为我们拥有的独特信息较少,这导致了更高的标准误,抽样分布有更大的变异性,具体取决于最终为研究抽样的集群。
纵向数据 📈
另一种常见的研究设计是纵向研究。在纵向数据中,我们随时间从同一单元收集同一变量的重复测量值。因为我们在不同时间测量同一分析单元,这些观测值很可能彼此相关。
因此,与整群抽样非常相似,我们为纵向研究中重复测量的变量拟合的模型需要考虑这种单元内的相关性。我们在该模型中估计描述单元内相关性的额外参数,并且我们将讨论如何做到这一点。
独立数据与相关数据 🔄
区分相关数据和独立数据非常重要,我们将在本课程中不断回顾这一点。区分以下两种情况很重要:
- 相关数据的模型:由于研究设计的某些特征(例如,整群抽样或纵向测量),观测值之间存在相关性。
- 独立数据的模型:观测值彼此完全独立,它们可能来自也可能不来自同一分布。
当我们考虑适合数据的模型时,我们将不断回顾这种二分法。这里的核心要点是,我们希望为给定变量找到尽可能好的模型,而那个尽可能好的模型应该反映影响我们感兴趣变量分布特性的重要研究设计特征。
下一步:模型拟合的目标与方法 🎯
接下来,我们将讨论拟合统计模型时的不同目标。我们将介绍,我们拟合模型可能是为了推断变量之间的关系,也可能是为了预测未来的结果,我们将讨论这种目标差异。我们还将介绍拟合模型以及对定义观测变量模型的参数进行推断的替代方法。回顾一下,我们在课程2中介绍了频率推断和贝叶斯推断的思想,当我们讨论模型拟合方法时,我们将回到这个思想。
总结 📝

本节课中,我们一起学习了不同研究设计(如简单随机样本、整群样本和纵向研究)如何生成具有不同特征的数据。关键区别在于观测值是独立的还是相关的。简单随机样本通常产生独立同分布的数据,而整群样本和纵向数据则会在观测值之间引入相关性。在为数据选择或构建统计模型时,必须考虑这些研究设计特征,以确保模型能准确反映数据的真实结构,从而得到有效的推断和精确的估计。理解数据的生成过程是进行任何有意义的数据分析的第一步。
71:模型拟合目标:推断与预测 📊➡️🔮

在本节课中,我们将概述使用Python拟合统计模型的两个主要目标:推断变量间的关系,以及基于模型预测未来结果。
概述:模型拟合的两大目标
当我们希望将统计模型拟合到数据时,主要有两个目标。首先,我们可能对推断给定数据集中变量之间的关系感兴趣。其次,我们的目标可能是基于历史数据估计的模型来预测或预报未来的结果。
目标一:进行推断 🔍
上一节我们介绍了模型拟合的总体目标,本节中我们来看看第一个具体目标:推断。我们将回顾本周早些时候的一个例子,该例子研究了年龄(或其标准化版本)作为测试成绩的潜在预测因素。测试成绩的范围在0到8分之间。
我们拟合了一个允许年龄与测试成绩呈非线性关系的模型。对于中等年龄值,我们看到了最高的预期测试成绩。
核心模型
我们用于描述这种关系的回归模型表明,成绩是年龄和年龄平方的函数。我们感兴趣的是估计参数 A、B 和 C。
公式:
performance = A + B * age + C * age^2 + E
其中,E 是误差,即实际成绩减去基于模型的预测成绩。该回归函数定义了成绩的期望均值作为年龄的函数。误差服从均值为0、方差恒定的正态分布。
参数估计与假设检验
如果我们的目标是推断年龄与成绩之间的关系,我们需要检查回归参数 A、B 和 C 的估计值。
以下是使用Python拟合模型后得到的参数估计值:
- A = 5.11
- B = 0.24
- C = -0.26
获得这些参数估计值及其标准误后,我们可以检验参数是否等于0的假设,或为这些参数构建置信区间,以推断预测变量“年龄”是否重要。
以下是检验每个参数显著性的方法:
公式:
T统计量 = (参数估计值 - 0) / 参数标准误
对于参数 B,其T统计量为 0.24 / 0.06 = 4。这表明估计的系数比零假设值高出4个标准误,是一个非常大的差异。因此,我们拒绝参数 B 等于0的原假设,认为这是一个显著的结果。
同样地,我们可以计算参数 A 和 C 的检验统计量。所有参数的检验统计量都很大,这强烈表明年龄与成绩之间的关系是显著的。
参数解释
- 参数 A (5.11):代表数据集中年龄为总体均值时的平均测试成绩。这个平均值显著不为零。
- 参数 B (0.24):代表当标准化年龄为0时,测试成绩的预期初始增长率。由于模型中包含了年龄平方项,这个参数是正值且显著,表明初始增长是显著正向的。
- 参数 C (-0.26):代表作为年龄函数的成绩非线性加速度。负值意味着在初始加速后,年龄的进一步增加会降低测试成绩。这个非线性方面也显著不为零。
如果参数 C 的估计值不显著异于零,那么成绩与年龄之间的关系实际上是线性的。但在本例中,显然不是这种情况。
目标二:进行预测 📈
现在,让我们转向第二个主要目标:基于拟合的模型进行预测。右侧的散点图显示了基于拟合回归模型的、作为年龄函数的测试成绩预测值。
预测模型
我们可以将回归模型写为:
公式:
performance = 5.11 + 0.24 * age - 0.26 * age^2 + error
给定这个模型,我们可以代入年龄值来计算测试成绩的预测值。图中的红色虚线代表了基于拟合模型的、作为年龄函数的成绩期望值。
例如,要预测当标准化年龄等于1时的成绩,我们进行如下计算:
代码:
predicted_performance = 5.11 + 0.24 * 1 - 0.26 * (1**2) = 5.09
计算得到的预测值为5.09分,这与右侧可视化关系图中的位置相符。
预测的不确定性
重要的是,我们不能忽略误差。所有的预测都伴随着不确定性。拟合的模型越差(即描述年龄与测试成绩关系的能力越差),不确定性就越大。

如果我们拟合一个非常简单的模型(例如,不包括年龄作为预测变量),我们会对所有人做出相同的预测(即因变量的总体均值),但与此类预测相关的不确定性会更大。当我们加入预测变量来定义均值时,我们减少了这种不确定性,从而得到更精确的预测。
无论如何,在进行预测时,我们都需要在描述这些预测时考虑到这种不确定性。我们不仅可以预测均值,还可以预测其他值(例如第95百分位数)。关键在于,无论我们基于拟合模型做出何种预测,都必须描述与该预测相关的不确定性,因为实际观测值会围绕预测值波动。
总结与展望 🎯
本节课中,我们一起学习了拟合统计模型到数据的两个主要目标:推断定义模型的参数以描述变量间的关系,以及基于拟合模型预测未来的观测值。
接下来,我们将深入探讨如何为不同的因变量计算这些参数估计值。我们还将详细讨论如何进行假设检验、构建置信区间、做出推断以及进行预测。此外,我们始终需要评估模型拟合的整体质量,并讨论基于模型推断的不同学派思想,这主要归结于频率主义推断与贝叶斯推断之间的区别。我们将在后续课程中详细讨论所有这些主题。
72:📊 预测值与预测不确定性绘图


在本节课中,我们将学习如何绘制模型的预测值及其不确定性。核心在于理解,除了关注模型给出的“最佳”预测(点估计),评估预测的可靠性(不确定性)同样甚至更为重要。我们将通过一个案例,直观地展示忽略不确定性可能带来的问题,并介绍如何利用标准误和可视化来评估模型。
上一节我们强调了可视化不确定性的重要性。本节中,我们通过一个具体的案例来深入理解这一点。
想象你是一名数据分析师。你的老板给你一份数据,其散点图如下所示。他要求你拟合一个线性模型,以便对新数据进行预测。

老板认为线性模型是合适的。于是你拟合了一个形式为 y = a + b*x 的模型,得到斜率约为 2.97,截距约为 5.43。你准备用这个模型进行预测。
然而,在你下班前,老板又给了你另一组数据。这组数据可能来自不同的来源或传感器。

你同样为这组新数据拟合了一个线性模型,得到了图中蓝色的回归线。这时你会发现一个关键问题:这个新模型的方程 y = 5.43 + 2.97*x 与第一个模型完全一致。
如果只看点估计(斜率和截距),这两个模型没有区别。但哪个模型更可靠呢?假设老板告诉你,预测误差在 ±10 的范围内是可以接受的。面对这两组数据,你对哪个模型的预测更有信心?
虽然回归线相同,但两组数据的方差(波动程度)差异巨大。第一组数据点紧密地分布在回归线周围,而第二组数据则非常分散。这直接影响了我们对模型预测的信心。
这个案例引出了一个非常重要的原则:务必在图表中绘制预测的不确定性。
以下是评估不确定性的两种主要方式:
1. 绘制数据与置信区间
通过可视化,我们可以直观地看到不确定性。在第一张图中,回归线周围的灰色置信带很窄,表明我们对斜率估计的把握很大。在第二张图中,置信带非常宽,说明斜率参数存在很大的不确定性,我们对它的真实值了解甚少。
因此,在其他条件相同的情况下,使用第一个模型进行预测会比使用第二个模型自信得多。
2. 查看标准误
当无法直接绘图时,标准误是量化不确定性的关键指标。标准误衡量了参数估计值可能偏离真实值的程度。
假设模型假设都得到满足,我们可以通过标准误来判断估计的精度。以下是两个模型参数的标准误对比表:
| 参数 | 模型一标准误 | 模型二标准误 |
|---|---|---|
| 截距 (a) | 0.92 | 3.86 |
| 斜率 (b) | 0.15 | 0.63 |

从表中可以看出,尽管两个模型的点估计完全相同,但模型一的标准误远小于模型二。这意味着模型一的参数估计分辨率更高、更精确。因此,我们会更倾向于使用模型一进行预测。
需要记住的是,不同的统计模型计算标准误的方法各不相同。因此,在使用任何模型进行预测前,你都应该了解其不确定性的计算方式。
以下是本课的核心要点总结:
- 尽可能绘制数据:这是发现方差模式和问题的最直观方法。
- 评估估计值的方差:利用标准误这一概念至关重要。
- 谨慎对待高方差估计:如果参数估计的标准误很大(分辨率低),说明模型可能捕捉到了大量噪声而非真实信号。在这种情况下,使用该模型进行预测需要格外小心。
总之,在建模和预测时,我们不仅要看模型给出的“最佳答案”(点估计),更要评估这个答案的可靠程度(不确定性)。理想情况下,我们总是希望处于像第一个模型那样低不确定性的情境中。
本节课中,我们一起学习了预测不确定性的重要性,并通过案例对比了仅关注点估计与结合不确定性分析的区别。我们掌握了两种评估不确定性的方法:可视化置信区间和解读标准误。记住,一个可靠的预测不仅要知道“预测值是多少”,还要知道“这个预测值有多大的把握”。
73:Python统计生态概览 🐍📊

在本节课中,我们将概览用于数据分析的Python工具生态。我们将了解Python为何适合数据分析,并介绍本课程将使用的核心库。
Python自1991年诞生,是一门易于学习的语言。其代码可读性强,语法清晰明了。Python拥有庞大的标准库,使得编写简短脚本来完成常见任务变得容易。
与R、Matlab和SAS等特定领域语言不同,Python是一门通用编程语言,并非专为数据分析设计。然而,通过结合使用一些功能强大的库,Python可以成为数据分析的理想环境。
虽然Python易于学习,但其运行速度并不特别快。而在进行数据分析时,速度是一个重要的考量因素。为了解决这个问题,用于数据分析的Python库实际上是用C语言编写的,但可以通过Python调用。普通Python用户无需了解任何C语言知识即可使用这些库,并能利用这些高度优化库的速度优势。
本课程将使用的库,是由开源社区的独立程序员团队在过去25年中开发的。这些库涵盖了数据管理、数值计算、绘图和统计建模等多个领域。它们相当成熟和稳定,可以信赖其在研究和工业工作中产生准确且有意义的成果。
上一节我们介绍了Python数据分析的背景,本节中我们来看看本课程将具体使用的核心库。
以下是本课程将使用的库列表:
- NumPy:提供高效的数组运算和数学函数基础。
- SciPy:建立在NumPy之上,提供科学计算工具(如优化、积分)。
- Matplotlib:一个基础的绘图库,用于创建各种静态、交互式图表。
这三个库构成了数据分析的基础。其他库通常会调用它们,但在你自己的代码中,通常不会直接使用它们。
以下是你将在本课程所有工作中直接使用的库:
- Seaborn:一个基于Matplotlib的高级数据可视化库,语法更简洁,能轻松创建美观的统计图形。
- Pandas:一个强大的库,用于数据操作和管理,提供了
DataFrame这一核心数据结构,方便进行数据清洗、转换和分析。 - Statsmodels:提供了广泛的统计建模工具,用于执行统计分析、假设检验和探索性数据分析。
此外,我们还列出了另一个库:
- Scikit-learn (sklearn):这是你完成本课程后可能想要探索的众多库之一。它提供了许多用于机器学习和预测分析的工具。

在本课程中,你将看到许多使用Python进行数据分析的示例。我们将详细讲解核心Python语言以及上述讨论的库。通过在Jupyter Notebook中使用这些工具,你将能够专注于语言和工具本身,而无需担心安装和配置问题。
本节课中我们一起学习了Python数据分析的生态概览,了解了Python的优势、速度问题的解决方案,并认识了构成现代Python数据分析工作流的核心库:NumPy、SciPy、Matplotlib、Seaborn、Pandas和Statsmodels。我们还简单提及了用于机器学习的Scikit-learn库。
74:线性回归导论 📈

在本节课中,我们将学习线性回归的基本概念。我们将使用一个关于侧手翻距离的研究数据作为例子,探讨如何描述变量之间的关系、如何建立预测模型,并初步了解如何从模型中得出统计推断。
数据与研究目标
我们使用的数据来自一项对25名成年同事进行的侧手翻研究。记录了许多变量,但我们主要关注的响应变量是侧手翻的距离(以英寸为单位)。其他可能相关的变量包括参与者的身高和侧手翻是否成功完成。
一个可能的研究目标是:建立一个模型,用于预测此类成年人群的平均侧手翻距离。具体来说,我们想知道:
- 身高是否是侧手翻距离的有效预测因子?
- 知道侧手翻是否成功完成,是否会影响对平均距离的预测?
探索响应变量
首先,我们来看主要的结果变量——侧手翻距离。其直方图和QQ图显示数据大致服从正态分布。如果我们想预测下一个随机选择的成年人进行侧手翻的距离,很可能会使用样本均值 82.48英寸 作为估计值。
但我们知道,可能还有其他特征或变量会影响这个距离。特别是,我们想探究身高是否是一个有用的预测因子。一个合理的假设是:个子更高的人通常侧手翻距离更远。
可视化关系:散点图
为了检验身高与侧手翻距离之间是否存在显著的正向线性关系,我们首先绘制散点图进行可视化。
- Y轴:响应变量,侧手翻距离。
- X轴:解释变量或预测变量,身高。
在描述散点图时,我们通常关注形态、方向、强度和异常值。
观察身高与侧手翻距离的散点图,我们可以看到:
- 形态:大致呈线性关系。
- 方向:正向关系(身高增加,距离倾向于增加)。
- 强度:数据点围绕线性趋势有一定分散,强度为弱到中等。
- 异常值:没有明显远离整体线性模式的点。
量化关系强度:相关系数与R²
为了更精确地量化这种关系的强度,我们可以计算相关系数 r。r 的取值范围在 -1 到 1 之间。本例中 r = 0.33,证实了我们观察到的正向、弱到中等强度的关系。
回归分析中另一个重要的量是 R²(决定系数)。对于单个定量解释变量和响应变量的情况,R² 就是相关系数的平方:R² = r²。
R² 告诉我们,响应变量的变异中有多大比例可以由其与解释变量的线性关系来解释。在本例中,R² ≈ 0.11,意味着只有大约 11% 的侧手翻距离变异可以通过其与身高的线性关系来解释。侧手翻距离本身的变异范围很大(从低于70英寸到超过110英寸),其中仅有一小部分能用身高差异来解释。
建立预测模型:最小二乘回归线
既然存在线性趋势,我们希望能找到一条“最佳拟合”直线,用于根据身高预测侧手翻距离。直线的通用方程是 y = mx + b。
在回归模型中,我们通常使用以下符号表示:
ŷ = b₀ + b₁x
ŷ:表示预测的响应值。b₀:截距,当x = 0时的预测响应值(其实际意义取决于上下文)。b₁:斜率,表示x每增加一个单位,y的估计平均变化量。公式为:b₁ = Δy / Δx。
如何定义“最佳拟合”?每个观测点与直线上对应预测值之间存在垂直距离,这个距离称为观测误差或残差。我们希望这些误差尽可能小。由于误差有正有负,直接相加会相互抵消,因此我们将其平方后再求和。
最小二乘回归线就是那条能使所有观测点的残差平方和达到最小的直线。
使用统计软件,我们可以得到针对本例数据的最佳拟合线。输出结果中的系数部分会给出直线方程:
- 截距
b₀ = 7.55 - 斜率
b₁ = 1.1
因此,回归方程为:预测侧手翻距离 = 7.55 + 1.1 * 身高
斜率 b₁ = 1.1 的解释是:我们估计,身高每增加一英寸,其侧手翻距离平均会增加约 1.1 英寸。
使用模型进行预测
现在我们可以用这条直线进行预测。例如,预测一个身高为64英寸的成年人的侧手翻距离:
ŷ = 7.55 + 1.1 * 64 = 78.4 英寸
进行预测时,必须确保用于预测的 x 值(此处为身高)处于我们建立模型时所依据的数据范围之内。在此范围之外进行预测称为外推,通常是不可靠的。64英寸正好在我们的身高数据范围内,因此这个预测是合理的。
这个预测值 78.4英寸 可以解释为:所有身高64英寸的成年人,其平均侧手翻距离的估计值。回归模型本质上就是在给出给定 x 值条件下,y 的条件均值估计。
计算残差
在我们的数据集中,恰好有一位身高64英寸的参与者,其实际侧手翻距离为 87英寸。现在我们可以计算这个观测点的残差。
残差定义为:残差 = 观测响应值 - 预测响应值
对于这个观测点:残差 = 87 - 78.4 = 8.6 英寸
我们可以为数据集中的每一个观测点计算残差。这些残差在后续的模型诊断中非常有用。
从描述到推断
到目前为止,我们主要进行了回归的描述性分析:可视化关系、建立最佳拟合模型。这个模型很好地拟合了我们的数据。
接下来,我们希望转向回归的推断部分:评估身高与侧手翻距离之间是否存在统计上显著的关系。为此,我们需要了解并检验线性回归模型的一些基本假设是否得到满足。此外,我们可能还会考虑扩展模型,纳入更多的预测变量。
总结

本节课我们一起学习了线性回归的基础知识。我们从一个具体的研究问题出发,通过散点图可视化两个定量变量(身高与侧手翻距离)之间的关系,并用相关系数 r 和决定系数 R² 量化了关系的强度和解释力。我们引入了最小二乘法的思想,找到了最佳拟合的回归直线,并学会了如何利用回归方程进行预测和计算残差。最后,我们指出了从描述性分析迈向统计推断(如显著性检验)和模型扩展的下一步方向。
75:线性回归推断 📊

在本节课中,我们将学习线性回归的推断部分。我们将探讨如何检验变量间是否存在显著的线性关系,如何构建置信区间,以及进行这些推断所需满足的假设条件。
上一节我们介绍了如何使用最小二乘法拟合回归线来预测数据。本节中,我们来看看如何基于这条拟合的线进行统计推断。
斜率的重要性
我们关注的核心问题是:两个变量之间是否存在显著的正向线性关系?这本质上是在检验回归线的斜率。
如果回归线的斜率为零,这意味着无论解释变量取何值,我们预测的响应变量值都是相同的。换句话说,知道解释变量的值对预测没有帮助。
在我们的例子中,翻筋斗距离与身高之间的回归斜率估计值为1.1。然而,这只是基于样本数据的一个估计。如果我们用另一组25个成年人重复研究,很可能不会得到完全相同的斜率估计值。
我们可以想象存在一个关于翻筋斗距离和身高的完整总体数据。如果我们能获得所有数据并拟合回归线,就能得到真实的回归线,其截距和斜率是真实的总体参数。我们关心的就是这个真实的斜率β1(用希腊字母表示),并想评估它是否为零(或是否为正)。
假设检验
在回归输出中,系数旁边提供了用于检验真实截距和斜率假设的信息。
以下是关键信息:
- 估计斜率 (Coefficient):我们的B1估计值为1.1。
- 标准误 (Std Error):0.67,它估计了像我们这样的估计斜率平均而言与真实斜率之间的距离。
- t统计量 (t-statistic):计算公式为
(估计斜率 - 假设值) / 标准误。它衡量了我们的估计斜率(1.1)距离零假设值有多少个标准误单位。计算得约为1.65。 - P值 (P-value):对于“斜率不为零”的双侧检验,P值为0.112。
由于我们的研究问题是检验“显著的正向关系”,这对应的是单侧备择假设(真实斜率 > 0)。因此,我们需要将双侧P值除以2,得到单侧P值约为0.056。这个结果在10%的水平上显著,但在5%的水平上不显著,属于边缘显著。
置信区间
除了假设检验,我们可能还希望报告真实斜率的一个合理取值范围,即置信区间。
以下是95%置信区间的解读:
- 我们有95%的把握认为,身高每增加一英寸,翻筋斗距离的总体平均变化在缩短0.2英寸到增长2.5英寸之间。
均值响应与个体预测的区间估计
我们还可以为特定解释变量值下的平均响应构建置信区间。例如,我们估计所有64英寸高的成年人的平均翻筋斗距离为78.4英寸,可以围绕这个估计值构建一个区间。
如果为数据范围内的所有身高值都构建这样的区间,就会在散点图上形成置信带。这些置信带是弯曲的,在最接近样本平均身高(本例中为67.6英寸)处最窄。因为估计远离均值处的平均值风险更大、变异性更高。
我们可能还想为一个个体进行预测。例如,预测一个具体的身高64英寸的成年人的翻筋斗距离。围绕个体预测值构建的区间称为预测区间。
以下是两者的比较:
- 预测区间总是比相应均值的置信区间更宽。
- 预测个体比估计均值更困难,需要考虑更多的变异性。
模型假设
所有这些推断技术都需要一些基本假设得到合理满足。
我们拟合的回归模型表达式为:
翻筋斗距离 = β0 + β1 * 身高 + ε
其中,ε代表随机误差。
模型假设包括:
- 误差ε应服从均值为零的正态分布。
- 误差的方差应恒定,不随身高变化。
由于我们无法观测真实误差,只能使用观测到的误差——即残差(实际值与预测值之差)——来检查这些假设。
以下是检查方法:
- 正态性检查:绘制残差的Q-Q图。如果点大致落在一条斜线上,则正态性假设基本合理。我们的数据显示正态性基本合理。
- 恒定方差检查:绘制残差与身高的散点图(残差图)。我们希望看到点随机散布在零线周围,并且在低身高和高身高处,点的离散程度(带宽)大致相同。我们的残差图显示了这种随机散布和大致恒定的方差。
数据还可以用来估计那个恒定的误差标准差σ,它表示观测值平均偏离预测值多远。我们的估计值约为14.5英寸,说明模型中仍存在相当大的变异性。
引入更多变量
我们的模型拟合看起来不错,但能否做得更好?考虑添加另一个自变量:是否完成了翻筋斗(是/否,已编码为指示变量,1表示完成,0表示未完成)。
引入新变量后的回归结果给出了新的截距、更新的身高系数,以及一个针对“完成状态”的系数(约6)。
在包含多个解释变量的模型中,系数的解释至关重要。每个系数只有在保持其他所有变量相同的情况下进行比较时才有意义。
以下是系数的具体解释:
- 身高系数 (1.26):比较两个完成状态相同的成年人,身高每相差1英寸,其翻筋斗距离平均相差约1.26英寸。
- 完成状态系数 (~6):比较两个身高相同的成年人,完成翻筋斗者比未完成者的平均翻筋斗距离长约6英寸。
从可视化上看,这表现为两条平行的回归线,“完成者”的线整体比“未完成者”的线高出约6英寸。
我们仍需检查新模型的残差,以评估推断的合理性。残差图再次显示了围绕零线的随机散布和恒定方差,假设看起来是合理的。
调整后的推断
现在,我们的推断问题是:在调整了完成状态后,翻筋斗距离与身高之间是否仍存在显著的正向线性关系?
查看输出结果:
- 调整后的身高系数估计为1.26英寸,标准误约为0.7。
- 用于检验“调整后存在正向关联”的单侧P值,由双侧P值0.085除以2得到,约为0.0425。
因此,在调整了完成状态后,我们确实发现了身高与翻筋斗距离之间存在显著的正向关联。不过,预测的误差标准差估计仍约为14.5英寸。

本节课中我们一起学习了线性回归的推断方法。我们探讨了如何对斜率进行假设检验和构建置信区间,了解了为均值响应和个体预测构建区间的区别,并学习了检验模型正态性和恒定方差假设的方法。最后,我们还看到了如何在模型中引入另一个变量(包括分类变量),并正确解释在调整其他变量后的系数含义。
接下来,我们将学习当响应变量不是定量变量而是二元变量(例如成功/失败,是/否)时的回归模型,这被称为逻辑回归。
76:因果关系与相关关系 🧠➡️🔗

在本节课中,我们将探讨统计学中一个核心且至关重要的概念:因果关系与相关关系的区别。通过密歇根大学专家的访谈,我们将理解为什么观察到两个变量一起变化(相关)并不一定意味着其中一个导致了另一个(因果)。这对于正确解读数据和模型至关重要。
嘉宾介绍 👥
首先,我们欢迎两位来自密歇根大学的统计学专家。
丹尼是调查研究中心的研究副教授,同时也兼任统计系的研究副教授。他本质上是一位统计学家和方法学家,致力于开发工具来帮助改善教育、健康和福祉。他主要开发两类工具:数据收集工具和数据分析工具,供其他研究人员用于探索何种治疗或干预措施最有效。他的研究重点是在健康和教育的动态决策场景中,帮助科学家制定一系列连续的干预决策。
约翰是统计系的副教授。他的日常工作很大一部分是与他的六名博士生一起工作,指导他们进行各种项目研究。他的研究兴趣广泛,包括基因组数据(如单细胞测序数据)和社会科学数据(如利用推特数据结合调查样本来了解目标人群)。
核心概念:关联 vs. 因果 🎯
上一节我们介绍了两位专家的背景,本节中我们来看看他们如何用“电梯演讲”来阐释关联与因果的核心区别。
约翰的“电梯演讲”:
他使用了一个关于社交焦虑与社交媒体使用时间的假设性例子。
- 你可以收集数据并观察到:花更多时间在社交媒体上的人,往往有更高的社交焦虑水平。
- 但这其中的“为什么”可能有多种解释:
- 因果方向 A:因为一个人更焦虑,所以不愿外出,从而花更多时间在社交媒体上。
- 因果方向 B:因为在社交媒体上看到别人都过得很好,反而加剧了自己的焦虑感。
- 混杂因素:可能两者并无直接因果关系。年轻人既更爱用社交媒体,也普遍更焦虑。年龄这个“第三变量”同时影响了这两个观测变量。
这个例子说明了关联(一起变化)不等于因果。关联可能存在,但背后的原因可能是多样的。
丹尼的“电梯演讲”:
他将概念联系到自己的研究领域——序列干预决策。
- 如果只是观察医生如何为焦虑症儿童选择治疗方案(行为干预或药物),然后发现接受行为干预的孩子效果更好,这并不能证明行为干预导致了更好效果。因为医生可能根据病情严重程度等未观测因素来分配治疗,这只是一个相关关系。
- 为了探究因果关系,他的研究采用了随机化试验。例如,随机分配儿童接受行为干预或药物作为初始治疗;一段时间后,对效果不佳的儿童再次进行随机化,调整治疗方案。通过这种主动的数据收集过程(随机化),可以更直接地回答关于因果的问题。
由此可见,区分关联与因果,很大程度上取决于数据的来源和收集方式。
研究案例深度解析 🔬
在理解了基本概念后,我们通过两位专家的具体研究项目,来看看这些概念如何在实际中应用。
以下是约翰分享的一个结合观察性数据与实验数据的研究案例:
项目目标:探索如何利用大量观察性数据来增强实验的效力,同时避免引入观察性数据中的偏差。
- 观察性数据:通常更容易、更廉价地获得大量数据,但难以确定因果关系。
- 实验数据:通过随机化可以确立因果关系,但成本高昂、招募受试者困难。
- 方法:对观察性数据进行统计建模,预测实验中可能的结果。然后将这些预测用于实验设计,例如更高效地分配资源,同时通过实验的随机化框架确保因果结论的纯净性。
- 应用领域:教育软件测试。他们拥有大量学生使用软件的历史观察数据,然后在新实验中随机分配学生使用不同版本软件,并尝试用历史数据优化实验。
这个项目展示了如何巧妙结合两种数据类型的优势。
接下来,丹尼分享了一个令他兴奋的关于推广循证实践的项目:
项目背景:许多学校并未向学生提供基于证据的心理健康实践(如认知行为疗法)。
研究问题:如何通过一系列干预,促使学校的心理健康专业人员采纳这些循证实践?
创新设计:
- 首先,对超过100所学校进行随机化,分配它们接受“教练指导”干预或低强度支持。
- 四个月后,对仍未采纳实践(达到低标准)的学校进行再次随机化,分配它们接受“协调支持”(解决学校层面的组织障碍)或维持原方案。
统计挑战:这是首个在群体层面(学校) 进行再随机化,但结果测量在个体层面(学校专业人员) 的研究。这种数据结构要求开发全新的分析方法。
核心联系:该项目通过主动的、多阶段的随机化干预设计,旨在建立因果证据,证明何种干预序列能最有效地导致“采纳行为”这一结果,超越了简单的相关性观察。
给统计学学习者的建议 💡
在学习统计建模技术的过程中,掌握关联与因果的思维至关重要。两位专家也为学习者提供了宝贵的建议。
丹尼强调,统计学远不止是数据分析:
- 统计学在科学研究的每一个阶段都至关重要:从确定可回答的问题,到设计数据收集方法,进行分析,再到结果的沟通与解读。
- 因果推断方法论更像是一种语言,它帮助我们构建问题并理解在何种条件下可以回答因果问题。学习者应在关注分析技术的同时,偶尔退一步,欣赏统计学贯穿整个科学过程的魅力。
约翰则特别强调了合作的重要性:
- 统计学家应尽早与其他领域科学家合作,甚至在数据收集之前就参与其中。
- 例如,在分析推特数据集时,可以思考:为了丰富当前分析,是否可以收集其他额外数据?这种前瞻性思维能促成新的合作,让统计学家从项目伊始就发挥作用,参与到从问题定义到结果解释的全过程。
这种跨学科团队合作(如与心理学家、计算机科学家等一起工作)是产出高质量研究的关键。

总结 📝
本节课中,我们一起学习了:
- 关联(相关)不等于因果:观察到两个变量同时变化,可能有多种解释,包括反向因果、双向影响或第三方混杂因素。
- 数据收集方式决定推断能力:观察性研究通常揭示关联,而精心设计的实验(尤其是随机化对照试验)是确立因果关系的黄金标准。
- 统计学的广阔天地:统计学家的角色贯穿科学探究的全周期,而不仅仅是数据分析。掌握因果推断的思维有助于提出更好的研究问题并设计更严谨的研究。
- 合作的价值:有效的统计应用离不开与领域专家的早期和持续合作。
希望本课能帮助你在未来的数据分析和模型构建中,更加审慎地思考变量之间的关系,并致力于通过严谨的设计来探索真正的因果机制。
77:逻辑回归导论 📊

在本节课中,我们将学习逻辑回归。逻辑回归是线性回归的扩展,专门用于处理结果变量只有两个类别(例如“成功”或“失败”)的情况。我们将使用一个关于“侧手翻”的数据集,探索如何根据年龄来预测一个人成功完成侧手翻的概率。
从线性回归到逻辑回归
上一节我们介绍了线性回归。本节中我们来看看当结果变量只有两个值时,线性回归会遇到什么问题。
我们使用的数据来自对25名成年人的随机抽样,记录了他们的年龄以及是否成功完成了侧手翻。结果变量“完成侧手翻”只有两个值:0(失败)或1(成功)。
如果我们尝试用线性回归来拟合年龄与成功概率的关系,会得到如下模型:
Y_hat = 0.34 + 0.015 * 年龄
其中 Y_hat 代表预测的成功概率。
然而,这个模型存在明显问题。例如,它预测一个50岁的人成功概率约为110%,这在概率论中是不可能的,因为概率值必须介于0%和100%之间。因此,我们需要一种新的方法来处理这种二分类结果。
逻辑回归与Logit变换
为了解决概率超出[0,1]区间的问题,逻辑回归不直接预测概率 P,而是预测概率的一个变换值——Logit(或称对数几率)。
其变换公式为:
logit(P) = ln( P / (1 - P) )
其中,P 是成功的概率,P/(1-P) 称为几率(Odds)。
以下是Logit函数的一些关键特性:
- 当成功概率
P = 0.5(即成功与失败几率相等)时,logit(P) = 0。 - Logit函数的值域是整个实数轴(从负无穷到正无穷),这完美避免了概率值超出边界的问题。
- 该函数是对称的。例如,
P=0.75和P=0.25的Logit值互为相反数。 - 核心规律:Logit值越高,对应的成功概率就越高;Logit值越低,对应的成功概率就越低。
在逻辑回归中,我们假设这个变换后的Logit值与自变量(如年龄)呈线性关系。
理解逻辑回归模型
基于Logit变换,我们构建的逻辑回归模型形式如下:
logit(Y_hat) = β₀ + β₁ * 年龄
其中,Y_hat 是预测的成功概率,β₀ 是截距,β₁ 是斜率。
当我们把这个模型的预测结果转换回概率尺度并绘图时,会得到一条S形曲线。这条曲线总是被限制在0和1之间,形状可以是上升的(像爬山),也可以是下降的(像滑雪),具体取决于斜率的方向。
重要提示:我们的数据中,年龄最小约为22岁。如果我们用这个模型去预测一个15岁的人的成功概率(这被称为外推),结果可能并不可靠,因为我们没有在这个年龄区间内的观测数据。
模型输出与解释
使用Python拟合逻辑回归模型后,我们得到以下关键输出(模型族为二项分布,连接函数为Logit):
- 截距
β₀≈ -4.42 - 年龄的斜率
β₁≈ 0.2096
因此,我们的逻辑回归方程为:
logit(Y_hat) = -4.42 + 0.2096 * 年龄
如何解释斜率 β₁?
直接解释“对数几率”的变化并不直观。更常见的解释方式是:
对于年龄每增加一岁,成功完成侧手翻的几率平均变为原来的 e^{0.2096} ≈ 1.23 倍。
这意味着,年龄越大,成功的几率越高(因为倍数大于1)。如果倍数小于1,则意味着年龄越大,成功几率越低。
示例计算:对于一个36岁的人,其预测的对数几率为:
logit(Y_hat) = -4.42 + 0.2096 * 36 ≈ 3.13
根据Logit函数图,logit=3.13 对应的成功概率非常高,大约在95%左右。
预测不确定性
和线性回归一样,逻辑回归的拟合线也存在不确定性。我们可以绘制预测区间(图中灰色阴影区域)来量化这种不确定性。
观察预测区间,我们可以发现:
- 在数据密集的区域(例如年龄在26岁左右),预测区间较窄,说明我们对预测值比较有信心。
- 在数据稀少的区域(例如年龄较大时),预测区间很宽,说明预测的不确定性很大。
- 当我们把对数几率尺度的预测区间转换回概率尺度时,区间会变得不对称且不规则,这是因为变换是非线性的。
模型假设与诊断
逻辑回归有一个核心假设:Logit(Y) 与自变量之间存在线性关系。验证这个假设是否成立具有一定挑战性。
一种检查方法是使用残差图。残差是观测结果(0或1)与模型预测概率之间的差值。然而,由于结果变量Y只有两个可能值,在给定的X值下,残差也只能取两个值,这使得残差图的信息量有限。
在以下情况下,残差图会更有帮助:
- 自变量X的取值范围很广。
- 模型中有多个自变量(协变量),这样可以观察到更多不同的
(X, Y_hat)组合。
在我们的例子中,年龄主要集中在22至35岁之间,范围较窄,因此残差图提供的信息不多。

总结
本节课中我们一起学习了逻辑回归的基础知识。我们了解到,当结果变量是二分类时,线性回归不再适用,因为它可能预测出无意义的概率值。逻辑回归通过Logit变换将概率映射到整个实数轴,从而解决了这个问题。我们学习了如何解释逻辑回归模型的系数,特别是如何理解斜率代表的几率比变化。最后,我们探讨了模型的预测不确定性以及其核心假设。在下一节中,我们将继续深入,学习如何对逻辑回归模型进行统计推断,包括置信区间和假设检验。
78:逻辑回归推断 📊

在本节课中,我们将继续学习逻辑回归,重点探讨如何对逻辑回归模型的斜率进行统计推断,包括构建置信区间和进行假设检验。
回顾与过渡
上一节我们介绍了逻辑回归模型的基本概念,并为一个关于侧手翻的数据集拟合了模型。本节中,我们来看看如何对这个模型的斜率进行统计推断。
数据与模型回顾
我们使用的数据来自一个包含25名成年人的随机样本,他们均尝试了侧手翻。
我们的主要关注变量是是否成功完成侧手翻,成功编码为 1,失败编码为 0。
我们的目标是探究能否根据年龄来预测侧手翻的成功与否。
在上一节中,我们拟合了一条逻辑回归曲线。这条曲线呈S形,显示了成功完成侧手翻的预测概率如何随年龄变化。
此外,我们获得了如右图所示的模型输出结果,其中包含了模型的系数。
构建斜率的置信区间
与我们在课程2和前几周学过的内容类似,置信区间的形式是:最佳估计值 ± 误差范围。
我们使用样本斜率,并加减其标准误的若干倍来构建区间。
逻辑回归置信区间的具体公式与线性回归相似,但关键区别在于我们使用Z分布而非t分布。其公式如下:
公式: B₁ ± Z* × SE(B₁)
我们可以从Python的输出结果中获取所需信息:
B₁(样本斜率)的估计值为 0.2096。- 其标准误
SE(B₁)为 0.171。 - 对于95%的置信区间,
Z*值为 1.96。
将数值代入公式计算:
0.2096 ± 1.96 × 0.171
计算后,我们得到置信区间为 (-0.126, 0.545)。这个区间与Python输出中提供的95%置信区间结果一致。
思考: 基于这个置信区间,斜率(系数)是否显著不为零?我们将在完成假设检验后再来讨论。
进行斜率的假设检验
接下来,我们使用假设检验框架来评估年龄对侧手翻成功概率的影响是否显著。
我们的假设如下:
- 零假设 (H₀): 总体斜率 β₁ = 0(年龄与成功概率的对数几率无关)。
- 备择假设 (Hₐ): β₁ ≠ 0(年龄对成功概率的对数几率有影响)。我们选择双尾检验,因为不确定年龄的影响方向。
检验统计量的计算公式与以往类似:
公式: Z = (B₁ - 0) / SE(B₁)
代入Python输出中的值:
Z = 0.2096 / 0.171 ≈ 1.225
这个计算结果与Python输出中提供的Z统计量一致。Python同时给出了对应的P值:0.221。
决策: 如果我们设定显著性水平 α = 0.05,那么由于P值 (0.221) 远大于α,我们无法拒绝零假设。因此,我们不能得出结论认为年龄与成功完成侧手翻的对数几率之间存在显著的线性关系。
现在,回顾之前的置信区间 (-0.126, 0.545),它包含了0。这表明零是斜率的一个合理值,这与我们假设检验“无法拒绝零假设”的结论是一致的。
核心要点总结 🎯
本节课中我们一起学习了逻辑回归的统计推断:
- 应用场景:逻辑回归用于预测变量只有两种结果(是/否,成功/失败)的情况。
- 推断方法:置信区间和假设检验的公式与线性回归非常相似。
- 关键区别:在解释结果时,必须结合逻辑回归的上下文,特别是要理解我们预测的是事件发生的概率,模型实际拟合的是概率的对数几率(Logit)。
- 本例结论:对于侧手翻数据,我们没有找到足够证据证明年龄是预测成功与否的显著因素。

在接下来的课程中,我们将有机会使用NHANES的数据,分析血压与吸烟之间的例子。
79:多层级模型的定义与应用场景 📊

在本节课中,我们将开始学习如何处理和分析具有依赖关系的数据。我们将介绍一种名为“多层级模型”的统计模型,它专门用于处理那些观测值之间因研究设计而相互关联的数据集。
概述
到目前为止,本课程讨论的回归模型都假设观测值是相互独立的。然而,在许多实际研究设计中,数据会存在依赖关系。例如,从同一个社区、学校或诊所收集的多个观测值可能彼此相关;或者在纵向研究中,同一个体在不同时间点的重复测量值也可能相关。为了准确分析这类数据,我们需要使用能够反映这种相关性的模型。多层级模型就是为此设计的一类强大工具。
什么是多层级模型?🤔
多层级模型是一类用于处理依赖数据的通用统计模型。其核心特点是,允许模型的回归系数在更高层级的随机抽样“簇”之间随机变化。
在之前讨论的模型中,回归系数(如截距和斜率)是我们要估计的固定常数。而在多层级模型中,这些系数可以因簇而异。例如,在纵向研究中,我们可以允许每个研究对象拥有自己独特的截距和斜率,而不是假设所有人都遵循完全相同的总体关系模式。
这意味着,我们不仅估计描述变量间关系的固定参数,还估计这些系数在不同簇之间的变异性。
多层级模型的方程表示
多层级模型通过引入“随机效应”来允许系数随机变化。让我们通过方程来理解这一点。
第一层方程(观测层面):
对于一个位于簇 j 中的观测 i,其因变量 Y 可以表示为:
Y_ij = β_0j + β_1j * X_ij + e_ij
请注意,这里的截距 β_0j 和斜率 β_1j 都带有下标 j,这意味着它们的具体数值取决于观测所属的簇 j。e_ij 是观测层面的误差项。
第二层方程(簇层面):
第一层方程中的随机系数本身又由第二层方程定义:
β_0j = γ_00 + u_0jβ_1j = γ_10 + u_1j
在这里,γ_00 和 γ_10 是我们要估计的固定参数,分别代表总体的平均截距和平均斜率。u_0j 和 u_1j 则是“随机效应”,它们是随机变量,允许每个簇 j 的截距和斜率围绕总体均值波动。通常我们假设这些随机效应服从均值为0的正态分布,其方差(τ_00 和 τ_11)正是我们感兴趣并要估计的“簇间变异”。
通过包含这些随机效应,我们实际上是在建模同一簇内观测值之间的相关性。
为何要使用多层级模型?✅
以下是考虑使用多层级模型的几个关键前提和原因:
- 数据结构:数据必须组织成簇(如诊所、学校、社区),且我们有理由相信同一簇内的观测值存在相关性。
- 随机抽样:这些簇本身必须是从一个更大的簇总体中随机抽样得到的(例如,随机抽样的医院,而不是性别这种固定分类)。
- 建模相关性:我们希望明确地建模同一簇内观测值的相关性,以符合研究设计。
- 研究兴趣:我们有明确的研究兴趣去估计所选回归系数(如截距、斜率)在簇之间的变异程度。
如果以上条件都满足,多层级模型能帮助我们回答诸如以下的问题:
- 不同医院在患者平均满意度上的差异,有多少可以由医院的规模来解释?
- 在一组药物使用者中,其长期药物使用趋势的个体间差异有多大?
多层级模型的优势 🏆
与其他处理依赖数据的方法相比,多层级模型具有独特优势:
- 高效估计:我们不是为每个簇估计一个独立的固定系数,而是估计一个代表所有簇随机效应方差的参数。这在簇数量很大时更为高效。
- 收缩估计:样本量较小的簇对总体方差估计的影响会向总体均值“收缩”,这防止了小样本簇产生不稳定的极端估计,使模型更稳健。
- 解释变异:我们可以在第二层方程中加入簇层面的预测变量,试图解释随机效应的变异。例如,我们可以研究“年龄”这个个体层面变量,能在多大程度上解释不同个体“年龄与健康结局关系”的斜率差异。
总结
本节课我们一起学习了多层级模型的基础概念。我们了解到,当数据因研究设计而产生依赖关系时,多层级模型通过引入随机效应,允许回归系数在随机抽样的高层级簇之间变化。这种方法不仅能更准确地建模数据相关性、提高模型拟合度,还能让我们量化并解释系数在簇间的变异,从而做出更丰富的统计推断。

在接下来的课程中,我们将通过可视化工具更直观地理解多层级模型的拟合过程,并学习如何将多层级模型应用于连续、二分类等不同类型的因变量。请记住,是否使用多层级模型,取决于我们是否有兴趣估计回归系数的簇间变异。
80:多层级线性回归模型 📊

在本节课中,我们将学习多层级线性回归模型。这是一种用于分析具有依赖关系(例如,数据按群组或个体重复测量进行聚类)的连续型因变量的统计模型。我们将回顾模型的基本概念、公式、参数估计方法,并通过一个实际数据分析案例来演示其应用。
模型回顾与引入
上一节我们讨论了用于依赖数据的统计模型。本节中,我们来看看专门为连续因变量设计的多层级线性回归模型。
让我们回顾在第二周介绍线性回归时讨论过的欧洲社会调查数据。
- 这些数据来自对比利时1703名成年人的全国性样本进行的面对面调查访谈。
- 数据中的变量包括受访者ID、访问员ID、22个衡量受访者对各种话题态度和意见的变量。
- 在本研究中,我们特别关注访问员对数据的影响。即,不同的欧洲社会调查访问员可能因提问方式或招募的受访者类型不同,而对收集的数据产生不同影响。我们希望为访问员之间的变异性建模。
- 我们还有基于复杂抽样设计的最终受访者权重。欧洲社会调查使用了涉及整群抽样的复杂抽样设计。
- 除了这些最终受访者权重,我们还有访问员特定的应答率。我们可以将其视为访问员层面的协变量。
随机效应概念回顾
让我们重温上一讲中讨论的随机效应概念。
- 随机效应是允许回归模型中的系数随机变化的随机变量。其变化取决于随机选择的群组(例如,社区)或主体(例如,纵向研究中的个体)。
- 多层级模型在不同领域可能有不同的名称。
- 它们可能被称为随机系数模型,因为系数被允许随机变化。
- 它们可能被称为变系数模型。
- 在更多纵向研究背景下,它们可能被称为主体特定模型。
- 在社会科学的一些领域,它们可能被称为分层线性模型。
- 在统计学等领域,它们也可能被称为混合效应模型,因为模型中混合了固定的回归参数(固定效应)和这些随机效应。
连续因变量的模型设定
让我们重新审视针对连续因变量 Y 的模型设定,这也是本讲的重点。
假设我们有一个连续因变量 Y,它在群组 J 内的个体 I 上进行测量。
我们可以写出包含固定效应的回归模型,如下所示:
Y_ij = β_0 + β_1 * X_ij + u_0j + u_1j * X_ij + e_ij
- 用蓝色标出的 β_0 和 β_1 是固定效应。这些回归系数没有下标 j,是我们试图估计的固定参数,它们捕捉了模型的整体截距以及 X 与 Y 的整体关系。
- X_ij 是在群组 J 内每个个体 I 上测量的预测变量。
- 然后,我们在标准线性回归模型的基础上添加了这些随机效应,以捕捉群组间的方差。
- u_0j 允许每个群组在模型中拥有独特的截距。
- u_1j 乘以预测变量 X_ij,这意味着我们可以将 u_1j 与 β_1 结合,为每个群组 J 定义独特的斜率系数。
- 最后,我们还有误差项 e_ij,它捕捉了回归系数和随机效应未能预测的部分。
固定效应与随机效应
为了使术语更清晰:
- 固定效应是定义未知常数的回归系数或回归参数。它们定义了我们希望估计的预测变量与因变量之间的关系。固定效应主要用于定义模型中因变量的均值。
- 随机效应则是随机变量。因为它们是随机变量而非固定常数,所以我们需要为这些随机变量定义分布。
使用多层级模型是因为我们的研究问题明确包含了对这些随机群组效应变异性的估计。
随机效应的分布假设
我们为随机效应 u_0j 和 u_1j 假设什么分布?非常常见的是,我们假设随机效应服从均值为 0、具有指定方差和协方差的正态分布。
在本模型的情况下,我们有两个随机效应:u_0j(允许每个群组有独特截距)和 u_1j(允许每个群组有独特斜率)。因为我们有两个随机变量,所以我们假设这两个随机变量服从二元正态分布。
(u_0j, u_1j)^T ~ N( (0, 0)^T, D )
- N 表示正态分布。
- (0, 0) 对应于这两个随机效应的均值向量。我们假设平均而言,每个随机效应都等于 0。因此,平均群组的表现符合我们对 β_0 和 β_1 的预期。
- 矩阵 D 是这些随机效应的方差-协方差矩阵。
- u_0j 的方差是 σ_0²。
- u_1j 的方差是 σ_1²。
- 此外,我们允许这两个随机效应(随机截距和随机斜率)之间存在协方差。矩阵 D 非对角线上的 σ_01 就是这两个随机效应的协方差。例如,随机截距越高,随机斜率可能越低,该协方差可能为负。这只是一种可能性,但我们在设定模型时允许这种情况。
我们还假设群组内的误差项服从均值为 0、方差为 σ² 的正态分布。
因此,我们实际上在估计三个方差分量:σ²、σ_0² 和 σ_1²,以及这两个随机效应的协方差 σ_01。
多层级设定
另一种书写此模型的方式是我们在上一讲中介绍的多层级设定。
我们可以将模型分解为:
- 层级 1 模型:因变量由与群组相关的随机系数定义,然后是在与因变量相同层级测量的预测变量(例如,群组内个体的年龄),以及误差项 e_ij。注意,层级 1 中包含的所有内容在实际数据中都有下标 ij。
- 层级 2 模型:随机系数由固定回归参数和允许该系数随机变化的随机效应定义。随机系数本身不是参数。
层级 1: Y_ij = β_0j + β_1j * X_ij + e_ij
层级 2: β_0j = β_0 + u_0j; β_1j = β_1 + u_1j
当我们将层级 2 和层级 1 的方程结合时,就得到了与之前几页幻灯片完全相同的模型。
为什么我们要考虑多层级设定?这种设定清晰地定义了在多层级模型中,在更高层级测量的协变量的作用。我们可以将每个随机系数的层级 2 方程视为一个仅包含截距的回归模型。我们旨在通过向模型中添加层级 2 协变量的固定效应(固定回归参数)来解释这些随机效应的方差。
解释随机效应方差
以下是一个例子。
以随机截距 β_0j 的方程为例。最初,我们用一个固定参数 β_0 加上与特定群组相关的随机扰动 u_0j 来定义它。我们拟合模型并计算随机截距的估计方差。假设出于示例目的,我们估计的 u_0j 的变异性为 2。
现在,我们在模型中加入了主体性别的固定效应(假设我们进行的是纵向研究,其中 J 表示被重复测量的主体,性别是不随时间变化的)。当我们添加“男性”这个预测变量到模型中时,我们期望 u_0j 的变异性实际上会下降,因为我们添加了 β_0j 的一个预测变量。如果这是一个好的预测变量,我们期望随机效应 u_0j 的方差会减小,就像在标准线性回归模型中通过添加预测变量时期望随机误差的方差会减小一样。
在重新拟合包含“男性”预测变量的模型后,我们发现 σ_0² 的估计值变为 1。与未包含“男性”作为预测变量的模型相比,我们解释了 50% 的截距变异性。这只是通过将性别的固定效应添加到我们的模型中实现的。
多层级建模的主要推断目标之一,就是看我们能否在这些更高层级(群组层级)识别出可以解释这些随机效应的预测变量。
参数估计与推断
我们如何估计模型参数?你将看到在 Python 中使用的计算技术称为最大似然估计。
MLE 的基本思想是:我们希望知道模型参数的哪些值使得观测数据出现的可能性最大。
我们可以使用 Python 等软件来计算固定效应(β_0、β_1、β_2 等)和方差分量(σ²、σ_0²、σ_1²)的 MLE,以及所有这些估计参数的标准误。
我们还可以使用针对此类模型的专门检验来对模型参数进行推断。
- 首先,我们可以像前几周讨论的那样,计算模型参数的置信区间或检验假设。
- 具体来说,我们可以使用一种称为似然比检验的技术来检验某些参数(例如,一个固定效应或一个方差分量)是否为 0。
似然比检验的思想是:如果我们将某个给定参数或一组参数从模型中移除,观测数据的概率或似然性是否发生显著变化?如果我们移除某些方差分量(这意味着我们移除了随机效应),是否会显著降低观测数据的似然性,从而使模型的拟合变差?这就是我们使用似然比检验的目的。
在本周的阅读材料中,你将看到关于如何对多层级模型中的参数执行此类似然比检验的非常具体的细节。在本讲座中,我们只看这些检验的结果。
欧洲社会调查实例分析
让我们回到那个 ESS 例子。我们关注 ESS 访问员在感兴趣的因变量测量上的变异性。
我们假设 ESS 中的访问员是从可能被雇用的更大访问员池中随机抽取的。我们感兴趣的是对警察的信任度与一个人认为人们通常愿意帮助他人的态度之间的关系。我们在第二周讨论线性回归和估计这种关系时考虑过这个例子。现在,我们将扩展该示例,以包含 ESS 访问员的随机效应,认为访问员可能会在收集的数据中引入聚类。
观测按访问员进行聚类,这些访问员是随机抽样的群组。如果这些访问员对数据有影响,我们可以在多层级模型中包含随机效应来解释这一点。
我们拟合一个多层级模型,以查看访问员是否对我们主要感兴趣的模型中的截距和/或斜率有影响。
固定效应结果
以下是我们示例的结果。
我们使用 Python 等软件来计算固定效应(即定义对警察的信任度与感知到的助人意愿之间关系的整体回归系数)的最大似然估计。该估计回归系数为正值 0.14,且显著。对于检验统计量,我们取该估计系数除以其标准误,并将该检验统计量参照 t 分布。我们看到看到如此大检验统计量的概率非常非常小。因此,在这种情况下,固定效应相对于标准误来说非常大。我们得出结论,这种关系是非零且显著的。
这意味着,那些对警察信任度较高的人,往往也对人们愿意帮助他人有更高的信心。
随机效应方差结果
但请记住,在这种情况下,我们超越了标准的回归分析。除了估计那些回归系数之外,我们还要考虑方差分量的估计。
让我们考虑模型中的整体截距 β_0。该截距的最大似然估计是 3.89。使用相同的检验方法,我们发现该参数也是显著的,P 值非常小。这意味着,在预测变量(对警察的信任度)为 0 时,助人意愿量表(范围在 0 到 10 之间)的均值为 3.89。这是我们试图估计的另一个固定效应。
因此,这些是我们对两个固定效应的估计:整体截距和整体斜率。
现在,请记住,对于多层级模型,我们超越了标准回归分析,我们还估计了那些随机效应的变异性。
- 随机截距的估计方差为 0.696。
- 随机斜率的估计方差为 0.012。
- 当我们应用似然比检验对这些方差分量进行推断时(本周的附加阅读材料将讨论),基于似然比检验,这两个方差都显著大于 0。
因此,有证据表明访问员之间的变异性在模型的截距和斜率方面都明显非零。这些描述了我们的整体模型中 u_0j 和 u_1j 的方差,并且这两个方差分量都是非零的。
这意味着,ESS 访问员围绕上一张幻灯片中的整体固定效应存在显著差异。访问员肯定有独特的截距和独特的斜率。他们可能因为提问方式或招募对象的原因,总体上收集到更高的助人意愿均值。但除此之外,他们用收集的数据记录了独特的斜率。因此,不同的访问员产生了对警察信任度与感知助人意愿之间关系的不同估计。
模型诊断与检验
我们还需要检查模型拟合情况并查看一些模型诊断。我们希望检查我们对随机效应和随机误差分布的假设是否合理。模型似乎拟合得好吗?
首先,我们将像在线性回归中那样查看残差的分布。它们看起来是正态的吗?它们看起来具有恒定方差吗?
但由于多层级模型中那些额外的随机效应,我们还将查看那些随机访问员效应的预测值(称为 EBLUP,即经验最佳线性无偏预测)的分布。记住这些是随机变量,因此我们无法直接根据模型估计它们。一旦我们拟合了模型,我们就可以计算这些随机效应的预测值,并且我们希望查看是否有特定访问员是异常值。
以下是基于拟合模型的残差的正态分位数-分位数图。你可以看到所有残差几乎完美地落在那条 45 度直线上。因此,这个 QQ 图表明残差是正态分布的,我们没有看到任何明显偏离该正态分布的异常值。就这个假设而言,这看起来非常好。
关于残差的恒定方差呢?这是残差与基于模型的预测值的散点图。这个散点图表明对误差的恒定变异性没有担忧。我们看到这个散点图有独特的外观,因为因变量上只有 11 个唯一值。这就是为什么你在这个图中看到那些平行的直线。
关于 EBLUP 呢?这些记住是对模型中包含的访问员随机效应的预测。
- 首先,查看随机截距的 EBLUP。我们假设它们服从均值为 0、恒定方差的正态分布。这个 QQ 图表明这些不同访问员的随机效应似乎确实是正态分布的,但有一个访问员很突出。这是访问员编号 4976,我们将更详细地查看他们的数据,以了解他们为何独特。
- 关于随机斜率的预测随机效应呢?再次,我们看到这些随机斜率遵循正态分布的一般证据。但同样,有一个访问员显得不寻常。因此,我们也想查看他们的数据。
异常访问员分析
首先,对于那个具有独特随机截距的访问员(4976),如果我们绘制他们的数据(助人意愿测量值对警察信任度测量值),你会看到他们有异常多的助人意愿小于 4 的应答。也许他们以一种奇怪的方式提问,或者他们在引导人们以不同的方式回答感知到的助人意愿,也许他们做出了暗示性陈述之类的。但这位访问员在因变量测量方面绝对是独特的,因此他们的截距低于预期。
那么具有独特斜率的访问员(7519)呢?关于 ESS 数据的一些非常有趣的事情出现了。当我们绘制他们的助人意愿对感知到的警察信任度时,看左手边的那簇点。然后有一个点远远落在外面。那个点在预测变量“对警察的信任度”上的值是 88。在 ESS 数据中,88 对应于缺失数据。
当我们为这种分析(无论是多层级建模还是回归建模)做准备时,我们需要非常仔细地查看描述性统计,并确保任何缺失数据在数据集中被适当地重新编码为真正的缺失值。当我们进行这项分析时,那个由 ESS 分配给缺失数据的特殊代码 88 被当作真实值处理。因此,这位访问员的斜率在分析中使用了那个 88。如果我们将该点包含在分析中,这导致他们的斜率非常平缓。这就是为什么与所有其他访问员相比,他们的斜率低于预期。
因此,在将该值 88 重新编码为缺失数据后,我们需要重新运行分析。这就是为什么描述性统计如此重要,因为这位访问员由于这一个数据点而显得非常独特。
结论与下一步
从这个例子中我们可以得出什么结论?前提是我们处理了缺失数据问题。
ESS 访问员实际上在这个整体分析中产生了独特的截距和斜率。我们希望在处理缺失数据后看看这是否仍然成立,但这将是我们的结论。
在这种情况下,这种方差不一定是好事。它增加了我们参数估计的不确定性,因为访问员正在引入这些估计的变异性。因此,我们应在移除异常值后重新评估访问员方差。如果每位访问员确实在随机子样本中工作,他们应该产生相似的截距和斜率(假设我们感兴趣的定义警察信任度与感知助人意愿之间关系的模型成立)。
分析的下一个步骤可能是向那些层级 2 方程添加访问员层面的协变量,以试图解释截距和斜率中的这种方差。我们可以添加数据集中存在的访问员层面应答率,或者如果我们有关于助人意愿和警察信任度等问题的访问员态度测量,也许访问员的态度可以解释这种变异性的一部分,也许这影响了他们提问的方式。
总结与预告

本节课中,我们一起学习了针对连续变量的多层级线性回归模型。我们回顾了模型设定、固定效应与随机效应的区别、参数估计方法,并通过欧洲社会调查的实例进行了深入分析。
接下来,我们将转向非连续的因变量,特别是二分类变量。我们将讨论用于聚类数据集的多层级逻辑回归模型,并重新审视之前为 NHANES 数据考虑的关于吸烟的逻辑回归模型。
81:多层级逻辑回归模型 📊

在本节课中,我们将学习如何为二元因变量拟合多层级统计模型,即多层级逻辑回归模型。我们将探讨其模型设定、参数估计、假设检验,并通过一个实际案例来理解其应用。
概述
上一节我们介绍了多层级线性回归模型。本节中,我们将重点转向因变量为二元(例如是/否、成功/失败)的情况。我们将学习如何构建和解释多层级逻辑回归模型,以处理具有层级结构(如个体嵌套于群组中)的二元数据。
模型设定
当因变量为二元时,我们使用逻辑回归。其核心是将事件发生概率的对数几率(log-odds)建模为预测变量的线性函数。
在多层级设定中,模型同时包含固定效应和随机效应。固定效应描述预测变量与对数几率之间的平均关系,而随机效应则捕捉同一高层级群组(例如,用 j 表示群组)内观测值之间的依赖性。
对于一个在群组 j 中的个体 i,其二元因变量 y_ij 的模型可以写为:
公式:
logit(P(y_ij = 1)) = β_0 + β_1 * x_ij + u_0j + u_1j * x_ij
其中:
logit(p) = ln(p / (1-p))是逻辑连接函数。β_0和β_1是固定效应系数。u_0j是允许每个群组拥有独特截距的随机截距。u_1j是允许预测变量x与对数几率的关系随群组变化的随机斜率。
我们对随机效应做出与多层级线性模型相同的分布假设:它们服从多元正态分布,均值为0,并具有特定的方差和协方差。
我们拟合多层级模型的一个关键动机是明确希望估计随机效应的方差,即研究不同群组在因变量(此处为对数几率)上的变异程度。
参数估计与假设检验
对于非正态的因变量(如二元变量),模型参数的估计在计算上更具挑战性。
估计难点:
通常,我们无法直接写出确切的似然函数。实践中,我们常采用数学方法(如自适应高斯求积法)先对似然函数进行近似,然后寻找使该近似似然值最大化的参数估计值。这使得模型拟合的计算时间更长。
假设检验:
我们可以使用与多层级线性模型相同的似然比检验方法来检验参数的显著性,例如检验某个固定效应是否为零,或随机效应的方差是否为零(即随机效应不存在变异)。这要求我们有足够多的群组和每个群组内的观测数。
实例分析:NHANES吸烟数据
让我们回顾之前在逻辑回归中使用的NHANES(美国国家健康与营养调查)数据集,研究“一生中是否吸过100支烟”这个二元指标。
问题所在:
在第二周的分析中,我们假设所有NHANES观测值相互独立。但实际上,NHANES采用多阶段概率抽样设计,个体被嵌套于随机抽样的地理区域(群组)中。因此,同一群组内个体的吸烟行为可能存在相关性。忽略这种相关性会导致标准误被低估,从而可能做出错误的显著性推断。
解决方案:
拟合一个多层级逻辑回归模型,为每个抽样群组加入随机截距。这能同时实现两个目标:
- 更准确地估计参数的标准误,反映抽样设计。
- 直接估计并推断不同抽样群组间吸烟概率的变异。
模型结果:
- 固定效应:与不考虑随机效应的模型相比,预测吸烟行为的关键变量基本相同,但其标准误普遍变大,这更准确地反映了数据的变异。
- 随机效应:随机截距的方差估计值为0.046。似然比检验强烈拒绝“方差为零”的原假设,表明在控制了其他预测变量后,不同抽样群组间的吸烟概率仍存在显著差异。
模型诊断:
检查随机效应的预测值(EBLUPs)的Q-Q图,结果显示其近似服从正态分布,且未发现异常离群值,说明模型假设基本合理。
模型比较与下一步
从本例中我们可以得出结论:在考虑了群组随机效应后,我们发现了相同的吸烟行为预测因子。
解释变异:
既然存在显著的、未被解释的群组间变异,下一步可以尝试引入群组层面的预测变量(如该区域的社会经济地位指标)作为固定效应,以解释这部分变异。
重要提醒:
在比较不同多层级模型的方差成分时(例如,加入群组预测变量前后),必须确保两个模型:
- 基于完全相同的观测案例。
- 包含完全相同的个体层面预测变量。
只有保持第一层预测变量不变,方差成分的比较才有意义。
总结
本节课中,我们一起学习了多层级逻辑回归模型。我们了解了如何为二元因变量设定包含随机效应的模型,认识了其参数估计的复杂性,并通过NHANES案例看到,考虑数据层级结构能提供更准确的统计推断,并允许我们研究群组间的变异。

接下来,我们将通过Python实战,学习如何为纵向数据拟合多层级模型并进行推断。之后,我们将转向处理相关数据的另一种方法——边际模型,它提供了不依赖于随机效应的替代建模思路。
82:多层级建模实践:Cal Poly 应用案例 🎯

在本节课中,我们将通过一个由加州理工大学(Cal Poly)开发的交互式网络应用,来实践和可视化多层级模型的核心概念。我们将学习如何区分“完全合并”、“完全分离”与“多层级”建模方法,并观察随机效应如何运作。
概述
我们将使用一个关于音乐专业学生表演前焦虑情绪的真实数据集。数据具有多层结构:层1是每次表演前的日记记录,层2是每位音乐家。我们将通过应用探索如何为这种嵌套数据建立模型。
应用介绍与数据
上一节我们介绍了多层级模型的基本概念,本节中我们来看看如何在一个实际应用中操作。
该应用由 Cal Poly 统计系的 Jimmy Wong 开发,它允许用户交互式地探索多层级模型。应用中将“多层级模型”也称为“分层模型”。
应用的核心是展示三种分析方法:
- 完全合并法:忽略所有分组(层2)信息,将所有数据混合分析。
- 完全分离法:为每个分组(层2单位)单独建立一个模型。
- 多层级模型法:一种折中方法,通过引入随机效应,允许组间存在变异,同时借用组间信息来“增强”估计,特别是对于样本量小的组,其估计会向总体均值“收缩”。
以下是应用内置的数据集描述:
- 数据来源:一项已发表的同行评审研究。
- 研究对象:37 名音乐专业本科生。
- 数据结构:在整个学年中,每次表演前,音乐家需填写一份情绪量表。
- 层2单位:音乐家(
ID)。 - 层1单位:每次表演前的日记记录(多次观测嵌套于每位音乐家)。
- 因变量:负性情绪(
Negative Affect),衡量表演前的焦虑程度。 - 预测变量:包括表演类型、观众情况等。
应用也支持用户上传自己的数据集进行分析,这是一个非常实用的功能。
案例研究:随机截距模型
现在,让我们进入应用的“案例研究”部分,从一个简单的随机截距模型开始。这类似于我们之前讨论的 NHANES 吸烟例子。
我们选择“随机截距”案例。应用提供了多种可视化来比较不同方法。
完全合并法视图
在“Pooled”标签页下,我们看到的是忽略音乐家分组效应的结果。
- 它显示了负性情绪(
Negative Affect)的分布直方图。 - 图中的垂直虚线是合并均值,即所有观测值的总平均,约为 16.2。
- 此方法完全忽略了日记记录嵌套于不同音乐家的事实。
完全分离法视图
切换到“Unpooled”标签页,视图变为为每位音乐家单独绘制的箱线图。
- 该图清晰展示了不同音乐家在表演前平均焦虑水平(
Negative Affect)上存在巨大差异。 - 下方的表格列出了每位音乐家的均值、方差和样本量。
- 这种可视化强烈表明,需要考虑音乐家之间的变异,随机效应方法在此非常适用。
多层级模型视图
点击“Hierarchical Linear Model”标签页,我们进入多层级模型的分析界面。这里有几个子标签页:
-
模型公式:
- 展示了我们拟拟合的随机截距模型的公式。
- 公式以多层形式呈现。截距被分解为总体固定效应和组别随机效应。
- 应用也提供了合并后的单层方程形式,便于理解。
- 明确列出了随机效应和层1误差的分布假设,即我们需要估计的两个方差成分。
模型公式示例(随机截距模型):
层1: Y_ij = β_0j + e_ij, e_ij ~ N(0, σ²) 层2: β_0j = γ_00 + u_0j, u_0j ~ N(0, τ²) 合并: Y_ij = γ_00 + u_0j + e_ij其中,
γ_00是总体固定截距,u_0j是第 j 组的随机截距效应,e_ij是层1残差。 -
毛虫图:
- 展示了各组(音乐家)随机效应估计值的分布及其置信区间。
- 直观体现了组间的变异性。
-
组内相关系数:
- 计算了组内相关系数,它衡量了同一音乐家内两次观测的相关性。
- 在此案例中,ICC 估计值约为 0.181,表明同一音乐家的观测值之间存在中等程度的相关性。这证明了使用多层级模型的必要性。
-
模型输出:
- 在“HLM Output”标签页下,显示了模型拟合的统计结果。
- 固定截距(总体均值)估计约为 16.2。
- 随机效应方差(
τ²,音乐家间的方差)估计约为 4.95。 - 残差方差(
σ²,音乐家内的方差)估计约为 22.46。
扩展模型:添加预测变量与随机斜率
在了解了基础模型后,我们可以尝试更复杂的设定。应用的主“Analyze Data”标签页允许我们自定义模型。
添加层1预测变量
例如,我们可以尝试在随机截距模型中加入一个层1预测变量,如“表演类型”。
- 添加后,模型输出会更新,显示该预测变量的固定效应估计值。
- 注意:在此特定操作中,应用提示模型“未收敛”。这提醒我们,在复杂模型中可能需要调整估计方法或检查模型设定。
随机斜率模型
让我们回到“案例研究”,选择“随机截距与随机斜率”的示例。这里,我们研究另一个预测变量(如“先前表现”)对负性情绪的影响,并允许这个影响(斜率)随音乐家不同而变化。
- 完全合并法视图:散点图显示,总体上该预测变量与因变量的关系很弱。
- 完全分离法视图:为每位音乐家绘制单独的回归线。可以看到,不同音乐家的回归线斜率和截距都有明显差异,这为引入随机斜率效应提供了视觉依据。
- 多层级模型视图:
- 查看模型公式,现在包含了针对斜率的层2方程。
- 在“HLM Output”中,我们可以看到:
- 该预测变量的固定效应(平均斜率)估计约为 -0.11,在 0.05 水平上不显著。
- 随机斜率方差的估计约为 0.078。要判断这个随机效应是否重要,通常需要进行似然比检验来比较包含与不包含该随机效应的模型。
总结
本节课中,我们一起学习了如何利用 Cal Poly 的交互式应用来实践多层级建模。

- 我们比较了完全合并、完全分离和多层级三种建模策略的异同。
- 我们探索了随机截距模型,理解了如何通过估计方差成分(
τ²和σ²)和计算组内相关系数来量化组间与组内变异。 - 我们尝试了更复杂的模型,包括添加固定效应预测变量和引入随机斜率。
- 该应用通过丰富的可视化(如箱线图、毛虫图、散点图)和即时模型输出,让初学者能直观理解“借用强度”、“收缩估计”等核心概念。
这个工具是学习和演示多层级模型的宝贵资源,建议大家通过课程提供的链接亲自操作,尝试不同的数据和模型设定,以加深理解。
83:边际模型的定义与应用场景 📊

在本节课中,我们将学习一种处理依赖数据的替代建模方法——边际模型。我们将探讨其定义、应用场景、与多层模型的区别,以及为何及如何拟合这类模型。
概述
上一节我们介绍了使用随机效应的多层模型来应对研究设计引入的数据依赖性。本节中,我们将转向一种不包含显式随机效应的替代方法——边际模型。我们将了解边际模型的核心概念、适用场景以及其相对于多层模型的优势。
什么是边际模型?🤔
边际模型是一类用于建模依赖数据的统计模型。当数据来自随机抽样的集群(如地理区域、访员、重复测量的个体)时,集群内的观测值可能由于环境、共享态度等原因彼此相关。边际模型的目标是估计自变量与因变量在所有集群上的总体平均关系,而非针对特定集群的条件关系。
与多层模型的关键区别在于:
- 多层模型:通过允许系数(如截距、斜率)在集群间随机变化来捕捉数据依赖性。公式上体现为包含随机效应项。
- 边际模型:不包含随机效应项,不估计集群间在系数上的变异。其核心是确保模型估计的固定效应参数的标准误能够正确反映研究设计(如集群抽样)引入的数据依赖性。如果我们忽略集群内观测值的相关性,可能会导致标准误被低估,从而做出错误的统计推断。
下图直观展示了两类模型拟合的差异:

该图展示了不同儿童(如46、48、49号)在因变量VSAE上随时间(纵向)的测量值。虚线代表多层模型的拟合结果,它为每个儿童拟合了独特的轨迹(随机效应)。实线代表边际模型的拟合结果,它对所有儿童都给出相同的总体预测轨迹,不关心儿童间的个体差异。
如何拟合边际模型?🔧
拟合边际模型通常遵循以下步骤:
以下是拟合边际模型的核心步骤:
- 定义均值结构:首先,为因变量的期望均值选择一个结构。这通常通过回归系数和预测变量来定义,与之前的线性模型定义方式相同。
- 选择协方差结构:然后,根据研究设计,为来自同一集群的观测值的方差和协方差选择一个合适的结构。这个结构需要反映那些未被预测变量解释的残差之间的相关性。
- 比较与选择模型:接着,比较具有不同协方差结构选择的边际模型的拟合优度。我们选择拟合最好的模型作为最终推断的基础。
协方差结构示例
协方差结构的选择取决于数据依赖性的性质。以下是两个常见例子:
以下是两种常见的协方差结构:
- 自回归结构:适用于纵向数据。假设残差(模型未能解释的部分)在时间上接近的观测之间相关性更强,而时间上相距较远的观测之间相关性较弱。同时,所有时间点的残差方差恒定。
- 可交换结构:适用于聚类数据(无时间顺序)。假设同一集群内,任何两个观测值之间的相关性是恒定且相同的。所有观测值的方差也恒定。
何时使用边际模型?✅
在以下情况中,边际模型是一个合适的选择:
以下是适用边际模型的三个条件:
- 数据存在依赖性:数据来自纵向或聚类研究设计,该设计引入了观测值之间的依赖性。
- 不关心集群间变异:分析目标不包含估计系数在主体或集群间的变异(即不关心随机效应的方差成分)。
- 关注总体平均关系:希望推断目标总体中自变量与因变量之间的总体边际关系,而非以特定集群为条件的关系。
为何使用边际模型?🌟

边际模型在处理依赖数据时具有一些优势:
以下是边际模型的三个主要优势:
- 计算更高效:拟合速度通常更快,计算时间更短,尤其对于非连续或非正态分布的因变量(如逻辑回归模型)。
- 可获得稳健标准误:可以计算出反映指定相关结构的稳健标准误,从而更准确地衡量由聚类设计引起的抽样变异。
- 更易处理非正态结果:相比多层逻辑模型,边际逻辑模型在计算上更容易估计。
需要注意的是,拟合边际模型时,我们无法再对系数在集群间的变异进行推断。
总结与预告
本节课我们一起学习了边际模型的核心概念。我们了解到,边际模型通过直接为残差指定协方差结构来应对数据依赖性,从而估计总体平均关系,并确保标准误的准确性。
在接下来的课程中,我们将回到之前的多层模型示例(如欧洲社会调查的访员效应、NHANES数据中聚类对吸烟概率的影响),并探讨如何使用边际模型方法来分析这些数据集。我们将讨论如何估计这些模型、评估模型拟合优度的方法,并通过Python进行实际操作练习,让你获得拟合边际模型的实践经验。
84:边际线性回归模型 📊

在本节课中,我们将学习如何为连续型因变量拟合边际模型。当数据因来自同一个体或同一个随机抽样的集群而存在相关性时,这种模型非常有用。我们将重点介绍一种名为广义估计方程的替代建模方法,用于处理具有依赖性的数据。
概述
上一节我们讨论了处理依赖性数据的边际建模方法。本节中,我们将具体探讨如何为连续型因变量拟合边际线性回归模型。我们将学习模型的基本形式、参数估计方法(特别是广义估计方程),以及如何选择合适的相关结构来进行推断。
边际模型回顾
在边际建模方法中,研究者可能不关心估计集群间斜率或截距的变异。他们可能只对所有高层集群的边际固定效应感兴趣。此外,研究者可能只关注整体的边际关系(可能针对不同亚组),而不是特定个体或集群的具体关系。
以下是拟合边际模型的替代方法,本周我们将重点介绍广义估计方程。
边际线性回归模型
让我们思考一下边际线性回归模型的样子。我们有一个连续型因变量,可以假设其边际分布为正态分布。
当我们为正态因变量拟合边际模型时,我们估计由以下模型定义的参数:
公式:
y_i = X_i * β + ε_i
重要说明:
边际模型不包含显式的随机效应。如果我们看这个回归模型,其中有 p 个不同的预测变量,请注意模型中没有任何代表随机效应的 u 项。这与我们在多层建模讨论中的模型不同。在这个边际模型中,我们只看到一个误差项 ε_i,它解释了观测值 y 与由回归函数(即 β 参数和预测变量的线性组合)定义的预测值 ŷ 之间的差异。
我们将来自给定集群 I 的观测向量记为 y_I(共有 n_i 个观测值)。我们假设 y 的观测向量服从正态分布,其均值由回归函数(固定效应或 β 参数与预测变量 X_I 的线性组合)定义,方差协方差结构由 V_I 定义。
关键点:
在 V_I 矩阵中,与标准线性回归不同,我们允许来自同一集群的观测值具有非零协方差。V_I 矩阵可以具有多种可能的结构。
另一个重点:
我们不显式估计随机集群效应的方差和协方差,因为模型中根本没有这些项。同一集群内观测值的相关性完全由这些误差项的相关性捕获,而这些相关性体现在 V_I 矩阵中。因此,拟合这些模型的一个重要部分是为 V_I 矩阵选择一个结构。
广义估计方程
广义估计方程是拟合边际模型的一种技术。当我们使用 GEE 为依赖性数据拟合模型时,我们实际上是试图找到定义我们模型的参数的估计值,这些估计值能解以下得分函数(也称为估计方程,GEE 技术由此得名)。
公式:
Σ_i [ D_i^T * V_i^{-1} * (y_i - μ_i) ] = 0
术语解析:
D_i^T: 是一个n_i × p矩阵的转置,其元素表示均值函数μ_i对回归参数β的偏导数。V_i: 是集群I观测值的n_i × n_i方差协方差矩阵,由用户指定。y_i: 是为第I个集群收集的结果测量的向量(列)。μ_i: 是基于所选模型的那些结果测量的期望均值向量。固定效应(β参数)通过定义μ_i的回归函数进入此估计方程。
我们使用称为迭代加权最小二乘法或费希尔得分算法等迭代技术来求解方程,以找到能解此特定得分方程的 β 参数估计值。
GEE 方法最早由统计学家 Liang 和 Zeger 在 1986 年的一篇重要论文中提出。
实践中的工作相关矩阵
在实践中,我们很少知道观测值的真实方差协方差矩阵是什么。我们尝试定义一个工作相关矩阵,作为我们对来自第 I 个集群的观测值真实相关结构的合理猜测。
我们通常指定这些观测值的相关性(而非协方差),因为对于许多非正态结果(GEE 常用于此类情况),观测值的方差实际上由模型的均值结构定义。因此,在实践中,我们更侧重于选择相关结构,而不太担心因变量的方差。
这种通用方法使得该方法能够轻松适应非正态因变量(如泊松分布、二项分布等)。我们将在考虑边际逻辑回归模型时重新讨论这一点,但现在我们的重点是连续正态情况下的边际线性回归模型。
如何进行统计推断?
参数估计值的方差使用所谓的三明治估计量计算。该估计量基于指定的工作相关矩阵。
我们的固定效应参数(β)的估计量是一致的。这意味着在足够大的样本量下,我们对这些固定效应参数的估计将收敛于这些参数的真实值。这是使用 GEE 的一个非常好的特性:即使我们错误指定了工作相关矩阵,固定效应参数的估计量仍然是一致的。
然而,对工作相关矩阵的错误选择会影响标准误(可能过大或过小),但不会影响固定效应参数本身的估计值。我们希望为工作相关矩阵做出一个好的选择,以确保我们的估计具有良好的标准误。
工作相关矩阵的选择
在使用 GEE 时,对于定义方差协方差矩阵 V_I 的工作相关矩阵,通常有四种主要选择:
以下是四种主要的工作相关结构:
- 独立结构: 假设同一集群内的观测值相互独立,相关性为零。
- 可交换结构: 假设同一集群内的观测值具有恒定的相关性。
- 一阶自回归结构: 假设在时间上更接近的观测值比相隔更远的观测值具有更强的相关性,相关性随时间衰减。
- 非结构化: 为观测值设定完全通用的相关结构,同一集群内的任何一对观测值都具有独特的相关性。
Liang 和 Zeger 在 1986 年的论文中提出了定义 GEE 模型的这些相关性的估计量。
我们在使用 GEE 时的重点主要是固定效应(那些回归参数 β),而不是对这些令人讨厌的相关性进行推断。我们主要将这些相关性视为一种干扰,目的是捕获同一集群内的依赖性,以便对反映同一集群内观测值依赖性的固定效应做出合理的推断。
模型比较与诊断
我们的推断对于方差协方差矩阵的可能错误设定具有稳健性。我们可以使用基于这些三明治标准误估计的 Wald 检验 来执行固定效应的假设检验。
我们还可以查看适用于 GEE 设置的信息准则,例如 QIC 准则。这些信息准则可用于比较具有不同相关结构的竞争模型的拟合优度。
均值结构的良好设定(包括模型中的交互作用或非线性预测变量)绝对重要。如果我们弄错了工作相关结构,对于固定效应来说是可以接受的(记住,我们的固定效应仍然会被一致地估计),但相关性结构选择不当会影响我们的标准误。因此,我们也希望为相关性结构做出合理的选择。
对于相当大的数据集,不同的工作相关矩阵选择不会对我们的推断产生巨大影响。非结构化通常作为一种通用的相关结构是有意义的。我们仍然可以考虑不同的潜在相关结构,以查看它们对我们的标准误有何种影响,然后再最终做出推断。
QIC 在比较不同模型的相关结构时很流行且应用广泛。我们会尝试识别具有最小 QIC 值的模型,这表明该相关结构代表了最佳拟合。Westgate 和 Burchett 在 2017 年的工作中描述了识别正确相关结构的更好替代方案。
实例应用:欧洲社会调查
让我们将 GEE 应用到之前讲座中讨论的欧洲社会调查分析中。
回顾:
我们感兴趣的是对警察的信任度(自变量)与一个人关于“人们是否普遍愿意帮助他人”的态度(因变量)之间的关系。在研究设计中,观测值按访问员进行聚类。
在之前的分析中,我们使用具有随机访问员效应的多层模型来解释这种聚类,或者完全忽略依赖性并使用标准线性回归。现在,我们将使用 GEE 作为多层建模的替代方法来解释这种依赖性。
我们使用 GEE 拟合了一个边际线性回归模型,并从一个可交换相关结构开始(假设同一访问员内的观测值具有恒定相关性)。我们使用此方法对这两个变量之间的整体边际关系进行推断,该推断将解释同一访问员内观测值的依赖性。
结果:
- GEE 估计的对警察信任度的固定效应为 0.04(正相关)。
- 基于三明治标准误估计,该固定效应在 5% 水平上不显著(P 值 = 0.054)。
- 相比之下,在多层模型中,该固定效应的估计值为 0.12(且显著)。
解释差异:
- 多层模型(包含显式随机访问员效应):对于特定访问员,对警察信任度每增加一个单位,预期助人意愿增加 0.12。
- 边际模型(不显式以随机访问员效应为条件):在所有访问员中(不以任何特定访问员为条件),对警察信任度每增加一个单位,预期助人意愿增加 0.04。
我们可以看到,由于我们没有以集群(此处为访问员)的随机效应为条件,而是查看所有访问员的整体关系,因此我们做出了略有不同的推断。
模型诊断与比较
我们假设了访问员内的恒定相关性,该令人讨厌的相关性估计值为 0.05。此特定模型的相应 QIC 为 6790.61。
考虑替代的工作相关结构:
- 非结构化和一阶自回归相关结构在这种情况下意义不大,因为每个访问员内的横截面观测值没有明确的时间顺序。
- 独立结构(假设零相关性)的 QIC 为 6791.55。
比较这两个 QIC 值(数值越低拟合越好),可交换相关结构的模型 QIC 更低,这提供了支持可交换相关结构的证据,表明考虑访问员内的相关性是重要的。
本节总结
在本节课中,我们一起学习了:
- 边际线性回归模型的基本形式和原理,它不包含显式随机效应,而是通过误差项的相关结构来处理集群内数据的依赖性。
- 广义估计方程 作为拟合边际模型的核心技术,其目标是通过求解估计方程来获得固定效应参数的一致估计。
- 实践中需要指定工作相关矩阵(如独立、可交换、自回归、非结构化),其选择主要影响标准误的估计,而不影响固定效应参数估计的一致性。
- 可以使用 QIC 等信息准则来比较不同相关结构模型的拟合优度。
- 通过欧洲社会调查实例,我们应用 GEE 进行了分析,看到了边际模型与多层模型在参数估计和解释上的差异,并利用 QIC 选择了更优的可交换相关结构。
总而言之,边际建模(特别是 GEE)为我们提供了一种强大的工具,可以在不关心集群间变异细节的情况下,对存在依赖性的数据做出关于整体固定效应的稳健推断。
下一步展望

接下来,我们将转向用于二分类结果的边际逻辑回归模型。这些模型可以很容易地使用 GEE 进行拟合。我们将讨论适用于其他类型因变量的 GEE 模型,并重新审视预测一生中是否吸过 100 支香烟的概率的例子。我们已经考虑了该分析的多层方法,现在我们将考虑边际建模方法,并观察相对于多层建模方法有何变化。
85:边际逻辑回归 📊

在本节课中,我们将学习如何处理具有依赖性的二元因变量数据。我们将重点介绍边际逻辑回归模型,这是广义估计方程(GEE)方法在二元结果变量上的应用。我们将理解其核心概念,并通过一个实例来比较它与多水平模型的结果。
概述
上一节我们讨论了针对连续型因变量的边际线性回归。本节中,我们将转向因变量为二元(例如,是/否,成功/失败)的情况。当研究设计导致这些二元观测值在群组内存在相关性时,边际逻辑回归是一种有效的建模工具。我们将使用GEE方法来估计这些“总体平均”的边际关系。
边际模型的核心思想
回顾边际建模方法,其核心兴趣不在于推断模型系数在群组间的变异。GEE作为一种通用技术,用于估计边际回归模型,同时考虑因变量在群组内的依赖性。这种依赖性可能源于整群抽样,或对同一研究对象随时间进行的重复测量。
在本讲中,我们的主要兴趣在于预测变量与二元因变量之间的“总体平均”边际关系。就像对连续型变量的边际线性回归一样,我们的焦点是跨越研究设计引入的所有群组的整体边际关系。
二元结果的边际模型
GEE方法由Liang和Zieger等人设计,专门用于方便地处理非正态的结果变量,特别是纵向测量数据。当对同一研究对象进行多次重复测量,且这些测量值存在相关性时,GEE非常适用。
估计方程中的均值结构由特定类型的广义线性模型定义。
- 在边际线性回归中,均值由预测变量的线性组合与回归系数定义。
- 对于二元因变量的逻辑回归,因变量的均值是该变量等于1的概率。
我们使用GEE中引入的符号 μ_ti(个体 i 在时间点 t 的均值)来表示这个概率,也可以写作 π_t 或 E[Y | X]。这就是给定预测变量值时,因变量的条件期望。
逻辑回归的链接函数
在逻辑回归的具体情况下,我们使用Logit链接函数来拟合模型。我们将因变量等于1的概率写为以下形式:
公式:
P(Y=1) = exp(β₀ + β₁X₁ + ... + βₖXₖ) / [1 + exp(β₀ + β₁X₁ + ... + βₖXₖ)]
这是一个逆Logit函数,用于根据指定的模型计算因变量等于1的概率。这里的 β 参数进入了估计方程。我们写下这个 μ 函数(均值),从而将感兴趣的回归参数引入估计方程,然后尝试求解使得分函数为零的参数值。
二元变量的方差
此外,当考虑二元因变量时,需要记住单个二元观测值的方差特性。
如果一个随机变量服从伯努利分布(只取1和0),那么该变量的方差等于观测值为1的概率(即均值 μ)乘以 (1 - μ)。
这意味着,二元因变量的均值和方差都由指定的模型共同定义。一旦我们为那个概率写下模型,我们就同时拥有了均值和方差的模型。
因此,在使用GEE时,我们的任务是选择一个工作相关结构,因为我们已经通过指定的模型定义了因变量的均值和方差。
选择工作相关结构
给定依赖数据后,我们可以为这些二元观测值(无论是由于整群抽样还是对同一对象的重复测量)选择我们认为最合理的相关结构。
使用GEE可以轻松做到这一点。回顾一下,对于工作相关结构我们有不同的选择:
以下是几种常见的工作相关结构:
- 可交换的:假设群组内任意两个观测值之间的相关性相同。
- 一阶自回归:适用于时间序列数据,假设相邻时间点的相关性最高。
- 非结构化的:不假设任何特定模式,估计群组内每对观测值之间的相关性。
- 独立的:假设群组内观测值彼此独立(即忽略依赖性)。
我们可以为给定的二元因变量依赖数据集找到拟合最佳的那一种。
实例分析:NHANES吸烟数据
让我们重新审视NHANES数据集中的吸烟例子。之前我们曾使用多水平模型拟合了“终生吸烟”指标的逻辑回归模型。在那个分析中,我们发现吸烟流行率在NHANES抽样群组之间存在变异性证据,表明存在一定的群组内依赖性。
现在,我们将考虑使用GEE技术的边际建模方法,并检查当拟合一个不包含NHANES抽样群组显性随机效应的“总体平均”模型时,我们的推断是否会改变。
幻灯片上的表格展示了我们感兴趣的逻辑回归模型中固定效应参数在两种方法下的估计结果。
总体而言,如果检查此表中的估计值,我们会发现相对于多水平建模方法,GEE方法得出的推断没有差异。预测变量如性别、年龄、种族、BMI、家庭规模、家庭收入与贫困线比率的回归参数估计值在多水平方法和GEE方法下都非常相似。表中用星号标出了那些被认为与零有显著差异的参数。
- 男性是一个非常重要的预测因子。无论是使用多水平方法还是GEE方法,身为男性都会显著增加曾吸过100支烟的概率。
- 年龄较大的人曾吸过100支烟的概率更高。
- 家庭规模越大,曾吸过100支烟的概率越低(可见负的固定效应)。
- 家庭收入与贫困线比率同样呈现负相关,该比率越高,曾吸过100支烟的概率越低。
我们使用两种方法得出了非常相似的推断。反映观测值聚类情况的标准误在两种方法下也非常相似。
需要记住的是,多水平模型包含了NHANES抽样群组的随机效应,而GEE方法中我们不这样做。在GEE中,我们只是指定一个工作相关结构来解释同一群组内观测值的相关性。
模型诊断
接下来我们思考一些模型诊断问题。
- 在假设抽样群组内为可交换相关结构的情况下,那个相关性的冗余参数估计值仅为 0.01。
- 该模型的相应QIC值为 6284.53。
与之前欧洲社会调查中边际线性回归的例子类似,考虑非结构化和一阶自回归相关结构在这里没有太大意义,因为NHANES本质上是横截面数据,我们没有时间顺序。
我们拟合了独立模型(假设同一抽样群组内相关性为零)。现在QIC值是 6284.05。请注意,独立模型的QIC值实际上比可交换工作相关结构的模型更小。这为“同一曼哈顿抽样群组内的观测值实际上没有强相关性”这一假设提供了证据。
因此,我们的结论是:在这个边际模型中,相关性相当弱,考虑它并没有对模型拟合产生巨大影响。
结论与总结
从这个例子中,我们可以得出什么结论?
- 推断一致性:当我们跨NHANES抽样群组观察总体的“总体平均”或边际关系时,我们发现的固定效应估计值与拟合多水平模型时基本相同。无论我们是像在多水平模型中那样以随机效应为条件,还是仅仅看总体的边际关系,我们都会就不同预测变量在预测终生吸烟行为方面的重要性得出非常相似的结论。
- 依赖性影响有限:在这种情况下,考虑群组内的依赖性(而非假设观测值独立)似乎并未改善模型拟合。虽然多水平建模方法显示了群组间存在变异的证据,但群组内相关性在本案例中并不显著。
- 解释方式:记住,在使用边际建模方法时,我们仍然跨群组边际地解释估计的固定效应。我们不是以某个特定NHANES抽样群组内发生的情况为条件,而是说跨越所有NHANES抽样群组,当预测变量的值发生变化时,总体平均概率如何变化。
下一步实践
现在,你将有机会在Python中练习使用GEE拟合边际模型,并学习解释结果。你将通过一个Jupyter笔记本,了解边际建模在Python中如何用于线性和逻辑回归。你将有机会动手在Python中拟合这些模型,并仔细解读特定建模过程的结果。

本节课中,我们一起学习了针对二元因变量的边际逻辑回归。我们理解了如何使用GEE方法来估计总体平均关系,处理群组内相关的数据,并通过实例看到其与多水平模型在结果上的一致性。关键在于,当研究兴趣在于跨群组的平均效应,且群组内相关性不强时,边际模型提供了一个强大而直观的工具。
86:模型拟合中是否应使用调查权重 📊

在本节课中,我们将探讨一个在回归分析中常遇到的问题:当数据来自概率抽样调查并附有调查权重时,在拟合回归模型时是否应该使用这些权重。我们将理解权重的意义,分析使用与不使用权重的影响,并最终给出实践建议。
🔍 回顾:什么是调查权重
上一节我们介绍了不同类型的回归模型,本节中我们来看看一个尚未讨论的问题:权重。调查权重通常出现在通过复杂概率抽样收集的数据集中。这些权重至少考虑了不同个案被选入样本的不等概率。
在理论上,这些权重旨在实现对有限目标总体中特定参数的无偏估计。这意味着,通过使用权重,我们得到的估计值在多次重复抽样中,其平均值将等于总体中我们关心的真实参数值。
因此,我们面临的情况是:分析师希望为来自概率样本的数据拟合一个回归模型,并且数据集中存在代表不同选择概率的权重。问题是:在拟合模型和进行统计推断时,我们是否需要考虑这些权重?
⚖️ 是否应在估计中使用权重
使用调查权重来拟合回归模型,首先能确保估计的回归参数相对于抽样设计是无偏的。然而,这些权重并不能保护分析师免于模型设定错误。
作为分析师,你仍然需要努力正确地设定模型的均值结构、方差-协方差结构。权重无法帮你避免遗漏重要预测变量或错误设定非线性关系等问题。
假设一位分析师设定了一个错误的模型,但仍使用调查权重进行估计,并计算了回归参数的加权估计值。结果会如何?
- 优点:分析师将得到相对于抽样设计而言无偏的回归参数估计。这是好事。
- 缺点:分析师为推断的有限总体设定了一个错误的模型。这是坏事。
在这种情况下,分析师得到的是一个错误总体模型的无偏估计。在实践中,我们希望同时实现两个目标:获得回归参数的无偏估计,并尽最大努力为推断的有限总体设定一个正确的模型。
📈 不同情境的示例分析
以下是几种不同情境的对比,帮助我们理解权重和模型设定的相互作用。
情境一:使用权重,但模型设定错误
在这个数据集中,每个点的大小代表其调查权重。散点图显示X和Y之间存在非线性关系。然而,分析师错误地设定了一个线性关系模型,并使用了权重进行估计。
结果:拟合的直线被拉向权重更高的点。我们得到了总体中“最佳线性模型”的无偏估计,但模型本身设定错误,完全忽略了数据中重要的非线性特征。
情境二:忽略权重,且模型设定错误
分析师忽略权重,并再次错误地设定了线性模型。
结果:拟合的直线现在被拉向权重较低的点。这导致了对总体回归参数的有偏估计,并且模型本身也是错误的。这是最糟糕的情况,我们既没有得到无偏性,也没有正确的模型设定。
情境三:忽略权重,但模型设定正确
分析师正确地设定了模型(例如,加入了X²项来捕捉曲线关系),但忽略了调查权重。
结果:设定良好的模型很好地拟合了观测数据。如果模型被正确设定,我们可能最终并不需要权重来捕捉总体中的这种关系。一个设定良好的模型本身就能描述X和Y之间的关系。
情境四:使用权重,且模型设定正确
分析师既使用了权重进行估计,又正确地设定了模型。这是推断上的“最佳情境”。
结果:我们从一个设定良好的模型中得到了该关系的无偏估计。模型拟合良好。然而,与情境三的拟合图相比,两者本质上没有区别。我们会得出相同的结论。
但存在一个缺点:如果你已经很好地设定了模型,再使用权重进行估计,可能会不必要地放大回归参数估计的标准误。在进行假设检验时,这会影响我们的推断。因此,在这种情况下,我们可能不希望使用权重,以免因使用这些“多余”的权重而影响推断的精确性。
✅ 实践建议总结
本节课我们一起学习了权重使用的权衡。基于以上分析,当你在数据集中发现调查权重并希望拟合回归模型时,可以参考以下建议:
-
首要任务:尽力正确设定模型
运用你的专业知识,审视可用的预测变量,观察数据(如散点图),尽你所能地在回归函数中捕捉变量间的关系。 -
比较加权与未加权模型
使用Python等统计软件,可以轻松快速地拟合使用和不使用调查权重的模型。这有助于你检查结果和推断对使用权重的敏感性。 -
分析比较结果
- 如果两种方法得到的估计系数相似,但加权估计的标准误更大,那么你的模型很可能在一定程度上被正确设定了,此时权重可能是不必要的,它可能只是增大了估计的抽样方差。
- 如果估计系数发生显著变化,则模型可能被错误设定了。在这种情况下,权重携带了关于你试图建模的总体关系的信息。此时,应报告加权估计结果,以确保至少相对于抽样设计是无偏的,即使模型可能不完美。
统计学家乔治·博克斯有一句名言:“所有模型都是错的,但有些是有用的。”在实践中,很难完美地设定每一个模型。我们很少能确切知道总体中真正的模型是什么。
因此,现代统计软件(如Python)使得拟合加权和未加权模型变得非常容易。你可以通过比较来检查推断的稳健性,并遵循上述建议。
📚 延伸阅读
此外,还存在一些正式的统计检验,用于比较拟合回归模型时加权估计与未加权估计的差异。你可以在本周的深度阅读材料中找到更多关于这些正式检验的信息。

本节课中,我们一起学习了在回归分析中是否及如何使用调查权重。核心在于权衡无偏性与模型正确性,并通过比较加权和未加权的模型结果来指导实践决策。
87:贝叶斯方法导论 🧠


在本节课中,我们将简要介绍统计学领域中的贝叶斯方法。统计学主要有两大框架:频率学派和贝叶斯学派。在本课程乃至整个系列中,我们主要关注频率统计。然而,我们确实希望尽早让你接触贝叶斯统计。你在频率统计中使用的大多数方法,在贝叶斯统计中都有相应的扩展或改编。本课程的核心目标是让你理解统计推理和统计思维。
概率的本质:世界 vs 心智
为了开始,我先问你一个问题:哪支球队赢得了2018年世界杯?你有答案了吗?现在,你能为你认为自己的答案正确的可能性分配一个概率吗?比如0%、20%或100%?你刚刚给出的这个数字,只在贝叶斯统计中被允许。
答案是法国队。恭喜那些知道答案的人,我自己可能也会答错。但在频率统计学的思想中,因为比赛已经结束,我们已经知道答案;你的答案要么正确,要么错误,你答对的概率要么是0%,要么是100%。
你给出的任何介于0%和100%之间的数字,都只能在贝叶斯框架下给出。原因在于,在频率统计中,概率是关于世界的(即某事客观上正确与否),而在贝叶斯统计中,概率存在于你的心智中。
在任何比赛开始前,你都可以进行一系列概率计算。例如,假设你知道有211支球队有资格参加世界杯,这意味着每支球队最初获胜的概率略低于0.5%。也许你非常擅长识别国旗,能从背景图片中认出参加世界杯的32支球队。那么你就知道每支球队最初获胜的概率约为3%。然而,你可能还知道德国队通常表现不错,因此你可能想提高他们的获胜概率,比如不说3%,而说5%,但你必须从其他球队的获胜概率中减去这部分。
这里的核心思想是:在频率统计中,你可以在比赛开始前进行这些更新和计算。然而,一旦任何比赛开始,这就不再被允许。但在贝叶斯统计中,只要你还不知道答案,你就可以更新概率。所以你可以说:“我知道德国队通常表现不错,我认为他们赢了,但我只有20%的把握,我不完全确定这是对的。”
更新概率:巧克力袋实验
现在,我们来看另一个例子。我这里有四块巧克力。三块是银色的,一块是紫色的。我将把它们放进两个不同的袋子里。一个袋子里有两块银色巧克力,另一个袋子里有一块银色和一块紫色巧克力。

我把袋子放到背后,然后随机挑选一个袋子(我自己也不知道挑中了哪个),并从该袋子中取出一块巧克力。假设取出的这块巧克力是银色的。这告诉了我关于这两个袋子的一些信息。我知道,如果选中的是“银-银”袋,有两种方式可以取出银色巧克力;而如果选中的是“银-紫”袋,只有一种方式可以取出银色巧克力。
在贝叶斯统计中,我利用这个新信息来更新这个袋子是“银-银”袋的概率。因此,我认为这个袋子是“银-银”袋的概率是三分之二,是“银-紫”袋的概率是三分之一。
在频率学派的框架下,因为我知道有两个袋子,所以选中任一袋子的可能性是50%,即等可能。这个例子阐释了贝叶斯统计中的两个核心思想:第一,概率存在于你的心智中,而非世界中;第二,你可以随着获得新信息而更新你的概率。知道我抽出了一块银色巧克力,这给了我额外信息,我据此更新了这个袋子是“银-银”袋的可能性。
贝叶斯统计与频率统计之间的这场辩论在统计学界非常具有争议性,影响深远。因此,请务必思考你更倾向于哪一方,并欢迎在统计学界参与这场辩论。
顺便说一句,实际上我选中的是“银-紫”袋。无论如何,我最终都得到了一块巧克力,这没什么不好。
总结

本节课中,我们一起学习了贝叶斯统计的基本思想。我们了解到贝叶斯方法与频率方法的核心区别在于对概率的解释:贝叶斯概率是主观的、基于信念的,并可以随着新证据的出现而更新;而频率概率是客观的、基于长期重复事件的。我们通过世界杯冠军猜测和巧克力袋实验两个例子,直观地体会了如何利用先验信息和似然性来更新后验概率。理解这两种不同的统计哲学,对于全面掌握数据分析思维至关重要。
88:贝叶斯统计与建模方法 🧠

在本节课中,我们将学习贝叶斯统计与建模方法,了解它与我们之前课程中使用的频率主义方法有何不同。我们将通过一个案例来阐明其核心思想。
概述
我们之前主要使用最大似然估计来拟合模型。这种方法为数据选择最佳的单一参数值。例如,我们估计均值是5,但在讨论标准误之前,我们很少谈及不确定性。在频率主义框架下,概率被视作长期频率,即如果重复实验多次,某个结果出现的期望。
贝叶斯方法则以一种根本不同的方式思考这些问题。接下来,我们通过一个例子来说明。
案例:估计密歇根大学学生的平均IQ
假设有人请我确定密歇根大学学生的平均IQ。首先,我需要形成对这个问题的初始看法。
1. 建立先验信念
我对IQ了解不多,所以我去网上查询。我发现美国总人口的IQ分布均值为100,标准差为10。因此,我将此作为我的初始信念。我假设均值是100,标准差是10。这未必是最准确的信念,但它是我的起点。其他人可能有不同的信念,这完全没问题。
这个初始信念的分布如下图所示。它基于总人口信息,是我分析的起点。

同样,其他人可以有不同的信念。例如,有人可能认为密歇根学生的IQ更高,或者分布是偏态的,甚至可能是多峰的。这些都可以是合理的先验信念。但在此案例中,我将坚持使用均值为100、标准差为10的正态分布作为我的先验。
这些信念的方差大小也反映了我的不确定程度。方差大表示我对均值的位置非常不确定;减小方差则意味着我的信念更确定。
2. 观察数据并更新信念
现在,让我们去收集一些数据,看看我的信念会如何改变。
- 第一次观察:我遇到一个人,其IQ为125。我的信念应该如何更新?我观察到的数据点远高于我最初认为的均值(100),因此我的信念均值应该被向右拉。更新后的信念分布会向右移动,均值可能提高到124左右。
- 第二次观察:接着,我观察到一个IQ为115的人。由于115低于更新后的信念均值(约124),我的信念分布会略微向左移动。同时,因为现在有了两个数据点,我信念的方差会减小,不确定性降低了。
- 持续更新:我继续在校园里观察,记录下更多的IQ分数:125, 115, 115, 120, 125, 117... 每次观察,我都用新数据更新我的信念。最终,在观察了大量数据后,我得到了一个新的信念分布。
3. 后验分布
这个最终得到的、基于数据的信念分布,被称为后验分布。在我们的案例中,后验分布看起来如下图所示。它大致以119为中心,并且比最初的先验分布更窄、更确定。

这个从先验开始,用数据通过贝叶斯方式更新信念的过程,就叫做贝叶斯更新。这是贝叶斯主义者思考世界的方式。
频率主义 vs. 贝叶斯主义
现在,让我们退一步,比较两种方法的核心差异。
在频率主义分析中,我最终会得到一个点估计。例如,我可能会说:“我的点估计是118。” 这只是一个单一的数字。
而在贝叶斯分析中,我得到的是关于参数的整个分布(即后验分布)。这使我们能够以概率的方式回答更多关于我们感兴趣量的问题。
利用后验分布回答问题
有了后验分布,我们可以回答各种问题:
- 期望值:你认为IQ分数的最佳猜测是多少?我可以回答:我的信念分布的均值是119.55。
- 最可能值:如果你必须押注一个值,你会选哪个?我会选择后验分布的众数,这被称为最大后验估计。对于正态分布,众数等于均值。
- 中位数:同样可以计算。对于正态后验,中位数也等于均值。
- 可信区间:什么是95%可信区间?它类似于频率统计中的置信区间,但解释不同。在贝叶斯框架下,我可以说:“有95%的概率,密歇根学生平均IQ的真实信念值落在116到122之间。” 这比频率主义的“95%置信度”解释更直观。
能够对概率进行陈述是非常强大的。然而,天下没有免费的午餐,我们稍后会讨论这种增强解释力所带来的代价。
贝叶斯思维模型
从更高层面看,贝叶斯思维是一个循环:
- 先验:我们从关于世界的某个信念(先验)开始。
- 建模:我们收集数据,并通过一个模型来处理它。
- 后验:我们使用模型和观测数据来更新我们对世界的信念,得到后验分布。
- 迭代:然后,我们可以将这个后验分布作为下一次新分析的先验,继续这个循环,直到我们的信念收敛或达到所需精度。
贝叶斯分析的步骤可以总结为:
- 建立先验信念。
- 收集数据。
- 更新信念,获得后验。
- 重复步骤2和3,直到获得满意的分辨率或资源耗尽。
- 使用最终的后验分布来回答关于感兴趣量的各种问题。
贝叶斯方法的优势与挑战
优势
- 全面的推断:所有关于我们感兴趣量的信念问题,都可以通过后验分布找到答案。
- 最优决策:结合损失函数,我们可以在不确定性下做出最优决策。
- 强大的建模:拥有整个分布而不仅仅是点估计,使我们能更好地建模世界。
挑战与代价
然而,这种以不同方式思考概率的解释也有其缺点:
- 概率观的转变:我们必须彻底改写概率的定义。频率主义将概率视为长期频率,参数是固定但未知的常数,数据是随机的。公式表示为:我们试图估计一个固定的
μ,最佳估计是x̄。 - 参数随机化:贝叶斯主义将概率视为信念程度。他们将数据视为固定的,而将模型参数视为随机变量。这意味着我们相信存在一个关于参数
μ的分布,并试图用数据推断这个分布。 - 数学与计算复杂性:除非使用特定的共轭先验,否则贝叶斯计算的数学可能非常困难,涉及高维积分。许多复杂模型没有解析解,我们别无选择,只能使用抽样方法来近似结果。这通常计算量很大,有时甚至难以处理。
总结

本节课中,我们一起学习了贝叶斯统计与建模方法的核心思想。我们通过一个估计平均IQ的案例,了解了如何从先验信念出发,通过观察数据来更新获得后验分布。我们比较了贝叶斯方法与频率主义方法在概率观和结果解释上的根本区别:贝叶斯方法提供了参数的完整概率分布,允许我们进行更直观的概率陈述。同时,我们也认识到这种强大能力伴随着数学和计算上的挑战。在接下来的案例研究中,我们将更具体地探讨贝叶斯建模的应用、解释及其优势。
89:贝叶斯方法案例研究(上)🔍

在本节课中,我们将学习贝叶斯统计方法的基础,并通过一个多层回归问题的案例研究,初步探索贝叶斯建模的工作流程。我们将了解如何设定先验信念、结合数据更新信念,并解释模型结果。
概述:贝叶斯数据分析三步法
在深入案例之前,我们需要回顾构建贝叶斯模型的三个典型步骤。
第一步是建立对世界的信念。这包括设定先验分布和似然函数。你可以将其视为搭建模型,并确保所有组成部分就位。
第二步是利用数据和概率更新我们的信念。我们需要检查模型是否与数据相符,即进行模型拟合检验,确保模型尽可能捕捉现实。
第三步是根据模型结果更新我们对世界的看法。给定我们的数据和模型,我们应该如何改变信念,以便在探索新数据时可以重新开始这个过程。
案例研究:数据与模型设定
对于本案例研究,我们使用了基于“全国青年纵向调查”的数据集。它包含434个观测值,旨在研究母亲智商对孩子智商得分的影响。
以下是数据中一些关键变量的示例:假设一位母亲智商为121,上过高中,年龄27岁。我们将尝试基于这三个变量来预测其孩子的智商得分。这个数据集足够大以展示贝叶斯分析的优势,又足够小以便于理解。
我们将从一个线性模型开始。在频率统计中,我们经常看到这种形式。我们将模型表达为:
公式:child_iq = β₀ + β₁ * mother_iq + β₂ * mother_age
我们首先使用这个基本的回归模型,暂时不包括“高中”这个变量。这样做有两个原因:首先是为了保持初始的简单性,我们稍后会构建更高级的模型;其次是为了真正看清贝叶斯方法与传统方法相比有何异同。
贝叶斯框架的核心:先验分布
到目前为止,我们所做的与过去并无太大不同。但在贝叶斯框架中,我们需要为我们的信念指定先验分布,这是一个新的概念。
关键点:每个参数都必须从一个捕捉我们信念的分布开始。我们赋予这些参数的分布称为先验。
例如,对于截距项 β₀,我可能相信它应该以0为中心,并用正态分布来表示这个信念。同样,对于斜率 β₁(母亲智商的影响),在分析之初,我的信念是母亲的智商几乎完全决定了孩子的智商,因此我可能将 β₁ 的先验中心设为1。但我对这个信念并不十分确定,所以我会给它一个较大的方差。对于 β₂(母亲年龄的影响),我最初的信念是它可能没有影响,因此我将其先验中心设为0。
贝叶斯分析的第一步就是明确陈述:“我的先验是什么?在进行数据更新之前,我实际上认为事情会是什么样子?”理想情况下,我们甚至应该在看到数据之前就建立这些先验。
一个好的做法是写下你所有的先验,并附上一小段说明选择它们的理由。
以下是我为本案例设定的初始先验(数据已中心化处理):
β₀(截距):由于数据已中心化,我预期截距接近0。我赋予它一个方差为20的较弱先验,意味着我不太约束这个参数。β₁(母亲智商斜率):我相信母亲的智商能解释孩子智商的大部分。我将其先验中心设为1(表示1:1的预期关系),但同样赋予较大的方差以表示不确定性。β₂(母亲年龄斜率):我最初的信念是母亲年龄可能对孩子的智商没有独立影响(在控制智商变量后),因此我将先验中心设为0。
最后,对于模型的误差,我假设孩子的智商观测值服从一个以我们的线性函数为均值、以 σ_error 为标准差的正态分布。σ_error 代表了模型的普遍误差,我们希望它尽可能小,这表明我们的预测很准确。
关于先验选择与主观性的讨论
需要强调的一点是:为什么我选择了这些特定的分布和先验?我在上面的句子中解释了它们。这总是一个好的做法。
但贝叶斯统计的一个特点是,它本质上允许建模者带有一定的主观性。两个不同的人可能会使用不同的先验,并因此可能得出不同的结论。如果一个人坚信 β₂ 是零,而另一个人认为它是一个非零的常数,那么他们的模型预测可能会大相径庭。
这种主观性是存在的。如果这个模型因为我的假设而显得主观,那正是关键所在。我的假设是我的,并且被带到了分析的最前沿。我不是这个领域的专家,也从未处理过这些数据,所以我试图通过估计中的不确定性来表达这一点——我给我的模型很大的空间去尝试解释参数可能是什么,我不希望我的先验过多地影响我的测量结果。
另一个要点是,征求专家意见以纳入先验数据通常是一个好主意,这也是贝叶斯分析真正闪耀的地方。如果你从之前的实验中得到一个想法,或者专家告诉你某个参数应该有不同的预期,这些都可以在你看到当前数据之前融入到你的先验中,如果它们与数据一致,就能让你得到更好的参数估计。
模型拟合与计算说明
在我们查看实际模型拟合结果之前,需要说明几点关于模型拟合的事情。
我使用一个名为 Stan 的程序来拟合这些模型,它是一种用于贝叶斯建模的领域特定语言。我们可以通过Python与Stan交互,但需要构建一些脚本。
对于像简单线性回归这样的问题,贝叶斯模型本身是易于处理的。但如果我们想要贝叶斯统计的所有优点,也需要处理其缺点。数学计算可能很快变得难以处理,因此我们有时需要使用抽样方法。我们可能无法得到一条漂亮的后验分布曲线,而是得到一个看起来像直方图的东西。只要我们有一个良好的抽样算法来近似这个分布,这通常是可以接受的。
最后需要说明的是,在拟合之前,数据已经进行了中心化处理。退一步想,如果一个母亲的智商或年龄为0,我们试图预测她孩子的智商,这并没有实际意义。因此,在开始之前我对数据和预测变量进行了中心化处理,这不仅是为了对均值有一点解释,也消除了因为拟合远离零的数据而产生的噪声截距项。

总结
本节课中,我们一起学习了贝叶斯数据分析的基本流程:设定先验信念、结合数据更新信念、并根据结果修正认知。我们通过一个预测孩子智商的案例,具体了解了如何为线性回归模型的参数设定先验分布,并讨论了先验选择中的主观性与专家知识整合的重要性。我们还简要介绍了用于贝叶斯计算的工具(如Stan)以及数据预处理(如中心化)的必要性。
在下一部分,我们将深入实际的模型拟合结果,并继续探索更复杂的模型设定。
90:贝叶斯方法案例研究(中)🔍

在本节课中,我们将继续案例研究,深入探讨在贝叶斯框架下模型拟合的结果。我们将学习如何解读参数的后验分布,理解预测区间,并通过一系列诊断图来评估模型的性能与潜在问题。
模型拟合结果:从点估计到分布估计
上一节我们介绍了贝叶斯多层回归模型的基本设定。本节中,我们来看看拟合模型后得到了什么。
在传统的频率主义分析中,我们得到的是参数的点估计和标准误。例如,一个模型的输出可能如下:
- 截距估计值:
0 - IQ系数估计值:
0.61,标准误:0.05 - 年龄系数估计值:
0.45 - 残差标准差估计值:
18.2
然而,在贝叶斯分析中,我们得到的是每个参数的完整概率分布(后验分布)。这是因为我们不是通过最大似然求一个最优值,而是通过抽样技术(如MCMC)来探索参数的所有可能值及其不确定性。
例如,对于IQ系数,我们得到的不是一个数字0.61,而是一个分布,其均值可能在0.6左右,并且有95%的区间可能在[0.5, 0.7]之间。这为我们提供了远比单一数字丰富的信。
解读参数的后验分布
以下是基于后验分布我们可以进行的分析:
截距分布:由于数据进行了中心化处理,截距的后验分布以0为中心,这符合预期。
IQ系数分布:其分布完全在0以上,这表明母亲IQ与孩子IQ之间存在正相关关系。我们的最佳估计是,母亲IQ每增加1个单位,孩子IQ平均增加约0.6个单位(范围大约在0.5到0.7之间)。模型可以表示为:
child_iq = intercept + beta_iq * mom_iq + beta_age * mom_age
年龄系数分布:其分布广泛地覆盖了0,这意味着母亲年龄与孩子IQ之间可能没有强关联,我们对这个参数非常不确定。
残差标准差分布:其均值约为18.2。这告诉我们,在给定预测值的情况下,实际观测值平均会偏离约18.2个单位,这量化了模型的预测不确定性。
此外,我们可以绘制参数之间的联合分布图。如果图中点云呈圆形或椭圆形,没有明显的倾斜模式,则说明参数之间相关性很弱,模型不存在严重的多重共线性问题,这是一个好迹象。
后验预测分布与区间
在贝叶斯框架中,一个强大的功能是进行后验预测检查。我们不仅得到参数分布,还能得到预测值的分布。
具体过程是:我们利用后验分布中抽取的每一组参数值(如截距、IQ系数、年龄系数),代入模型为新的或已有的观测数据生成一个预测值。重复这个过程成千上万次,就得到了该数据点预测值的完整分布。
例如,对于数据集中第一个观测(母亲IQ=100,年龄=25),我们得到的不是一个预测点(如85),而是一个预测分布。我们可以从这个分布中计算95%可信区间(例如[70, 140]),并检查真实观测值(蓝色竖线)是否落在这个区间内。
我们将这个检查应用到所有数据点上,并生成一个标准化图。图中:
- 蓝点表示真实值落在其
95%预测区间内的观测。 - 红点表示真实值落在其
95%预测区间外的观测。
理想情况下,大约应有95%的点是蓝色的。我们的模型基本符合,但注意到左侧(低IQ区域)有较多红点,暗示模型可能系统性地低估了这部分孩子的IQ。
模型诊断与发现
通过观察后验预测的各类诊断图,我们可以总结出当前模型的几个关键发现:
预测区间宽度:所有预测区间的平均宽度约为71。这意味着当被要求预测一个孩子的IQ时,我们只能说“大概是100,但上下浮动35左右”,不确定性相当大。
误差分布:预测误差(预测均值与真实值之差)的直方图显示,大部分误差在±15以内,但存在少数误差超过40的极端情况,表明模型对某些“异常”观测拟合不佳。
后验预测检查图:这是最重要的诊断工具之一。我们将真实数据的分布(蓝色曲线)与模型重复预测值的分布(多条灰色曲线)进行对比。
- 均值偏移:模型预测值的分布均值似乎略低于真实数据的均值。
- 尾部不匹配:模型严重低估了IQ在
50-70区间的孩子数量,同时高估了70-85区间的数量。这说明模型为了拟合左侧的“厚尾”数据,将整体预测都向左拉偏了。
总结与下节预告
本节课中,我们一起学习了如何解读贝叶斯模型的后验输出。我们看到了参数如何以分布形式呈现,如何利用后验分布进行预测并计算可信区间,以及如何通过一系列诊断图(如联合分布图、预测区间覆盖图、误差直方图和后验预测检查图)来全面评估模型的性能。
基于本次分析,我们发现了当前模型的几个主要问题:
- 未纳入“母亲是否高中毕业”这一可能重要的变量。
- 预测区间过宽,不确定性大。
- 模型系统性地高估中等偏低IQ(
65-80),低估偏高IQ(90-115)。 - 后验预测检查显示模型未能很好地拟合数据左侧的厚尾分布。
在下一部分,我们将尝试改进这个模型。我们将把母亲的高中教育状态作为变量加入,并可能调整模型的层次结构。同时,我们需要找到一种方法来处理数据中的偏态分布,以便更好地拟合那个左尾,而不让所有预测都产生向下的偏差。

我们第三部分再见。
91:贝叶斯方法案例研究(下)🔍


在本节课中,我们将完成贝叶斯统计建模的案例研究。我们将基于上一部分构建的简单模型进行改进,引入新的变量和更复杂的结构,以更好地拟合数据并理解其中的关系。
模型改进:引入分组变量
上一节我们主要关注了寻找一个简单模型,并通过绘图来观察模型的拟合情况。本节中,我们将尝试改进模型。
首先,我们希望在新模型中考虑“母亲是否上过高中”这个变量。这或许能帮助我们捕捉到数据中更隐性的分组信息。
那么,我们应该基于哪些变量进行分组呢?是只考虑“高中”变量,还是也考虑不同的“母亲智商”分组?这取决于我们想要表达的信念。在本分析中,我们将保持简单:仅基于母亲是否上过高中这个二元变量进行分组,同时将母亲智商分为三个范围:
- 低智商:智商低于85
- 中等智商:智商在85到115之间
- 高智商:智商高于115
这样,我们就有了六个组合分组。
构建分层(多水平)模型
在模型中,我们将允许三个参数(截距、母亲年龄系数、母亲智商系数)在六个分组中各自变化。这意味着我们将有:
- 六个不同的截距参数
- 六个不同的母亲年龄斜率参数
- 六个不同的母亲智商斜率参数
这有助于通过允许斜率和截距变化来更好地“分桶”数据。
我们还将做出另一个假设:每个分组的这些参数本身来自一个共同的分布。例如,所有六个截距参数都来自一个共同的“全局截距”分布。我们对年龄斜率和智商斜率也做同样的假设。这样做是为了正则化这些值,防止过拟合。
在传统的分层或多水平模型中,我们允许这些参数自由变化。而在贝叶斯框架下,我们可以在更高层次上对它们进行约束,这几乎像一个三阶段模型。
贝叶斯建模迫使我们明确陈述许多假设。陈述这些先验假设允许他人对其进行质疑。例如,我对这些参数做出分层假设,这本身就是一个信念,应该被审视。所有模型都是主观的,贝叶斯或频率学派皆然。随着模型复杂度增加,这些建模选择都基于我们从第一个模型更新后的信念,它们并非绝对真理。贝叶斯统计只是迫使我们把更多假设摆在台面上。
以下是模型的数学形式。我们说孩子的智商 child_iq 是以下因素的函数:
child_iq = β0_group + β1_group * mom_iq + β2_group * mom_age + ε
其中,β0_group、β1_group、β2_group 的具体值取决于母亲所属的“高中”和“智商”分组。然后,我们假设每个分组内的这些参数来自更高层的共同分布。
模型的可视化理解
理解分层模型的一个简单方法是将其视为一个生成过程。
想象一下,我们有一个关于全局截距 β0_global 的分布(先验)。从这个分布中,我们为六个分组分别抽取六个具体的截距均值。每个分组的截距参数 β0_group 则服从以这个抽取的均值为中心的正态分布。我们对 β1_global(母亲智商斜率)和 β2_global(母亲年龄斜率)重复同样的过程。
最终,对于每个分组(例如“上过高中且低智商”),我们使用该组特定的 β0_group、β1_group、β2_group 来构建一个响应分布(预测孩子智商的分布)。我们的观测数据就被认为是来自这个响应分布。
我们可以自上而下地(生成式)思考模型:全局参数 -> 分组参数 -> 响应分布 -> 观测数据。也可以自下而上地(推断式)思考:观测数据 -> 告诉我响应分布 -> 告诉我分组参数 -> 告诉我全局参数。
这些模型通常有很多组成部分,但它们能以更直观的方式(思考数据如何生成)来建模非常复杂的关系。一个缺点是,在贝叶斯框架下拟合这类模型计算量可能非常大。
模型更新与误差分布
除了引入分层结构,我们还将改变误差 ε 的分布。我们之前看到数据有一个向左的尾巴,而预测分布没有捕捉到这一点。因此,我们尝试使用一个能捕捉偏态的分布。
我们使用偏态正态分布作为误差项。偏态正态分布类似于正态分布,但多了一个参数 α 来控制偏度:
- 如果
α为负,分布向左偏(负偏)。 - 如果
α为正,分布向右偏(正偏)。
我们希望这能帮助模型捕捉数据中观察到的左尾。
模型结果解读
拟合模型后,我们得到了后验分布。以下是主要发现:
关于截距:由于数据进行了中心化处理,所有分组的截距后验都大致以0为中心。但某些分组(如“上过高中且低智商”)的后验分布非常宽,这意味着我们对该组的截距信息很少(因为该组样本量 n 很小)。
关于母亲智商系数:不同分组的系数差异很大。一个有趣的发现是:对于“未上过高中但高智商”的母亲,其智商与孩子智商的系数关系为负;而对于“上过高中且高智商”的母亲,该系数为正。这可能意味着存在“均值回归”现象或其他因素在起作用。虽然0仍然在可信区间内,但这个差异值得进一步探究。
关于母亲年龄系数:除了少数分组(如“上过高中且中等/高智商”),大多数分组的年龄系数后验区间都包含0。这意味着我们无法确定年龄与孩子智商之间存在明确关系,不确定性很高。
关于偏态参数:偏态参数 α 的后验分布大部分为负值,这以合理的确定性表明数据整体存在左偏,证实了我们改变误差分布的决策是合理的。
模型预测性能评估
我们像上次一样构建了预测分布并进行检查:
个体预测:之前模型中落在预测区间外的观测点,在新模型中大部分都被包含了进来,说明预测有所改善。
预测区间宽度:与之前所有预测区间宽度都集中在70左右不同,新模型中不同分组的预测区间宽度不同。数据量少或组内方差小的分组,其预测区间更窄(确定性更高);反之则更宽。这体现了分层模型根据分组调整不确定性的能力。

误差分布:误差的直方图显示,大多数误差集中在0附近,但右侧仍有一个长尾(存在一些难以预测的高误差点)。整体上,极端误差(如50-60)减少了,更多误差集中在40以下。
后验预测检查:与上一个模型相比,新模型的预测更好地捕捉了数据整体的形状和偏态,低估和高估的区域减少了。不过,模型似乎仍然难以完美拟合低智商区域的那个“隆起”,未来可能需要使用混合分布等更复杂的方法。
总结与展望
本节课中,我们一起学习了如何构建和评估一个分层贝叶斯模型。
这个多层模型在预测能力上并非巨大的飞跃,但在统计推断上是一个进步。我们现在可以剖析不同分组的效应,深入了解各组的斜率和截距。然而,这也带来了参数估计方差增大的代价,因为每个分组的数据只是总体的一个子集。
下一步的建模方向可能包括:
- 使用混合分布或其他技术来处理那个过度膨胀的左尾。
- 寻找更智能的智商分组切分点,而不是武断地使用85和115。
- 结合非线性项与分层结构。
几点核心启示:
- 贝叶斯模型因为提供参数的完整分布而计算密集,但能建模非常复杂的关系。
- 建模是一个迭代的、充满主观假设的过程。有时,捕捉估计值的不确定性比估计值本身更重要。宽后验区间表明,在给定模型和当前数据下,我们对估计值非常不确定。
- 尽管存在计算复杂性和数学门槛等缺点,但贝叶斯方法所提供的强大建模能力和对世界的深入理解,常常是值得付出这些代价的。
感谢大家学习这个关于贝叶斯建模的三部分案例研究。我们看到了多种图表和建模数据、更新信念、理解模型含义的方式。贝叶斯方法因其强大能力,允许我们进行非常复杂的分析。希望你们喜欢这个关于贝叶斯统计的专题课程。再见!😊

浙公网安备 33010602011771号