## 3.5 根据数据计算条件概率
对于本课程中的许多例子,我们将使用从国家健康和营养检查调查(NHANES)获得的数据。NHANES 是美国疾病控制中心组织的一项正在进行的大型研究,旨在全面了解美国成人和儿童的健康和营养状况。每年,这项调查都会通过访谈和身体和医学测试,对美国大约 5000 人的样本进行调查。nhanes 数据作为一个包包含在 r 中,使其易于访问和使用。它还为我们提供了一个大型的、现实的数据集,作为许多不同统计工具的示例。
假设我们对以下问题很感兴趣:考虑到某人身体不活跃,他们患糖尿病的可能性有多大?--这就是![](https://img.kancloud.cn/40/6c/406c842b7a33ea6adc4ddd09abcbe6c6_160x19.jpg)。nhanes 记录了两个变量,解决了这个问题的两个部分。第一个(`Diabetes`)询问患者是否被告知患有糖尿病,第二个(`PhysActive`)记录患者是否从事至少中等强度的运动、健身或娱乐活动。我们先计算一下简单的概率。
```r
# Summarize NHANES data for diabetes and physical activity
# drop duplicated IDs within the NHANES dataset
NHANES_diabetes_activity <-
NHANES %>%
distinct(ID, .keep_all = TRUE) %>%
drop_na(PhysActive, Diabetes)
pander('Summary data for diabetes')
```
糖尿病汇总数据
```r
NHANES_diabetes_activity %>%
count(Diabetes) %>%
mutate(
prob = n / sum(n)
) %>%
pander()
```
<colgroup><col style="width: 15%"> <col style="width: 9%"> <col style="width: 9%"></colgroup>
| 糖尿病 | N 号 | 问题 |
| --- | --- | --- |
| 不 | 4893 个 | 0.899 个 |
| 是的 | 550 个 | 0.101 个 |
```r
pander('Summary data for physical activity')
```
体育活动汇总数据
```r
NHANES_diabetes_activity %>%
count(PhysActive) %>%
mutate(
prob = n / sum(n)
) %>%
pander()
```
<colgroup><col style="width: 18%"> <col style="width: 9%"> <col style="width: 9%"></colgroup>
| 物理激活 | n | prob |
| --- | --- | --- |
| No | 2472 个 | 0.454 个 |
| Yes | 2971 年 | 0.546 个 |
这表明 nhanes 数据集中的某个人患糖尿病的概率是 0.101,而某个人不活跃的概率是 0.454。
为了计算![](https://img.kancloud.cn/40/6c/406c842b7a33ea6adc4ddd09abcbe6c6_160x19.jpg),我们还需要知道糖尿病 _ 和 _ 不活动的联合概率,除了以下两种情况的简单概率:
```r
# compute joint probabilities for diabetes and physical activity
NHANES_diabetes_stats_by_activity <-
NHANES_diabetes_activity %>%
count(Diabetes, PhysActive) %>%
mutate(
prob = n / sum(n)
)
pander(NHANES_diabetes_stats_by_activity)
```
<colgroup><col style="width: 15%"> <col style="width: 18%"> <col style="width: 9%"> <col style="width: 9%"></colgroup>
| Diabetes | PhysActive | n | prob |
| --- | --- | --- | --- |
| No | No | 2123 个 | 0.39 分 |
| No | Yes | 2770 个 | 0.509 个 |
| Yes | No | 349 个 | 0.064 个 |
| Yes | Yes | 201 年 | 0.037 个 |
基于这些联合概率,我们可以计算![](https://img.kancloud.cn/40/6c/406c842b7a33ea6adc4ddd09abcbe6c6_160x19.jpg):
```r
# compute conditional probability p(diabetes|inactive)
P_inactive <-
NHANES_diabetes_activity %>%
summarise(
mean(PhysActive == "No")
) %>%
pull()
P_diabetes_and_inactive <-
NHANES_diabetes_stats_by_activity %>%
dplyr::filter(Diabetes == "Yes", PhysActive == "No") %>%
pull(prob)
P_diabetes_given_inactive <-
P_diabetes_and_inactive / P_inactive
P_diabetes_given_inactive
```
```r
## [1] 0.1411812
```
该块中的第一行代码通过测试每个独立的 physactive 变量是否等于“no”来计算![](https://img.kancloud.cn/33/36/3336839ed4b99a0a09ed0c4323552227_91x18.jpg)。这个技巧是有效的,因为 r 将真/假值分别视为 1/0;因此,如果我们想知道某个事件的可能性,我们可以生成一个布尔变量来测试该事件,然后简单地取该变量的平均值。然后我们用这个值来计算条件概率,我们发现一个人患糖尿病的概率是 0.141。
- 前言
- 0.1 本书为什么存在?
- 0.2 你不是统计学家-我们为什么要听你的?
- 0.3 为什么是 R?
- 0.4 数据的黄金时代
- 0.5 开源书籍
- 0.6 确认
- 1 引言
- 1.1 什么是统计思维?
- 1.2 统计数据能为我们做什么?
- 1.3 统计学的基本概念
- 1.4 因果关系与统计
- 1.5 阅读建议
- 2 处理数据
- 2.1 什么是数据?
- 2.2 测量尺度
- 2.3 什么是良好的测量?
- 2.4 阅读建议
- 3 概率
- 3.1 什么是概率?
- 3.2 我们如何确定概率?
- 3.3 概率分布
- 3.4 条件概率
- 3.5 根据数据计算条件概率
- 3.6 独立性
- 3.7 逆转条件概率:贝叶斯规则
- 3.8 数据学习
- 3.9 优势比
- 3.10 概率是什么意思?
- 3.11 阅读建议
- 4 汇总数据
- 4.1 为什么要总结数据?
- 4.2 使用表格汇总数据
- 4.3 分布的理想化表示
- 4.4 阅读建议
- 5 将模型拟合到数据
- 5.1 什么是模型?
- 5.2 统计建模:示例
- 5.3 什么使模型“良好”?
- 5.4 模型是否太好?
- 5.5 最简单的模型:平均值
- 5.6 模式
- 5.7 变异性:平均值与数据的拟合程度如何?
- 5.8 使用模拟了解统计数据
- 5.9 Z 分数
- 6 数据可视化
- 6.1 数据可视化如何拯救生命
- 6.2 绘图解剖
- 6.3 使用 ggplot 在 R 中绘制
- 6.4 良好可视化原则
- 6.5 最大化数据/墨水比
- 6.6 避免图表垃圾
- 6.7 避免数据失真
- 6.8 谎言因素
- 6.9 记住人的局限性
- 6.10 其他因素的修正
- 6.11 建议阅读和视频
- 7 取样
- 7.1 我们如何取样?
- 7.2 采样误差
- 7.3 平均值的标准误差
- 7.4 中心极限定理
- 7.5 置信区间
- 7.6 阅读建议
- 8 重新采样和模拟
- 8.1 蒙特卡罗模拟
- 8.2 统计的随机性
- 8.3 生成随机数
- 8.4 使用蒙特卡罗模拟
- 8.5 使用模拟统计:引导程序
- 8.6 阅读建议
- 9 假设检验
- 9.1 无效假设统计检验(NHST)
- 9.2 无效假设统计检验:一个例子
- 9.3 无效假设检验过程
- 9.4 现代环境下的 NHST:多重测试
- 9.5 阅读建议
- 10 置信区间、效应大小和统计功率
- 10.1 置信区间
- 10.2 效果大小
- 10.3 统计能力
- 10.4 阅读建议
- 11 贝叶斯统计
- 11.1 生成模型
- 11.2 贝叶斯定理与逆推理
- 11.3 进行贝叶斯估计
- 11.4 估计后验分布
- 11.5 选择优先权
- 11.6 贝叶斯假设检验
- 11.7 阅读建议
- 12 分类关系建模
- 12.1 示例:糖果颜色
- 12.2 皮尔逊卡方检验
- 12.3 应急表及双向试验
- 12.4 标准化残差
- 12.5 优势比
- 12.6 贝叶斯系数
- 12.7 超出 2 x 2 表的分类分析
- 12.8 注意辛普森悖论
- 13 建模持续关系
- 13.1 一个例子:仇恨犯罪和收入不平等
- 13.2 收入不平等是否与仇恨犯罪有关?
- 13.3 协方差和相关性
- 13.4 相关性和因果关系
- 13.5 阅读建议
- 14 一般线性模型
- 14.1 线性回归
- 14.2 安装更复杂的模型
- 14.3 变量之间的相互作用
- 14.4“预测”的真正含义是什么?
- 14.5 阅读建议
- 15 比较方法
- 15.1 学生 T 考试
- 15.2 t 检验作为线性模型
- 15.3 平均差的贝叶斯因子
- 15.4 配对 t 检验
- 15.5 比较两种以上的方法
- 16 统计建模过程:一个实例
- 16.1 统计建模过程
- 17 做重复性研究
- 17.1 我们认为科学应该如何运作
- 17.2 科学(有时)是如何工作的
- 17.3 科学中的再现性危机
- 17.4 有问题的研究实践
- 17.5 进行重复性研究
- 17.6 进行重复性数据分析
- 17.7 结论:提高科学水平
- 17.8 阅读建议
- References