百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 热门文章 > 正文

R数据分析:什么是人群归因分数Population Attributable Fraction

bigegpt 2024-10-12 05:09 8 浏览

今天在论文中看到个这么一个术语Population Attributable Fraction,中文叫人群归因分数,意思是暴露如果被取消,某个结局减少的比例,比如我知道了孤独感对抑郁有影响,计算PAF可以得出,如果孤独感被干预,抑郁人群比例会下降多少:

PAF; the proportionof cases of depression that could be prevented if the influence of loneliness was removed

这么一个指标在经济评价的文章也有见过,就是我预防了人群某个风险因素之后我能为国家省多少医疗支出。

写研究意义的用得上哦。

今天就给大家介绍一下这个指标:

人群归因分数初识

这个指标也叫做人群归因比Population Attributable Proportion或者归因比Attributable Proportion Among the Total Population

(Also called the Population Attributable Proportion or Attributable Proportion Among the Total Population)

PAF是一个评估暴露的人群作用的非常常见的流行病学指标,表达的意思是如果某个暴露取消,结局会减少的百分比。

PAF is the estimated fraction of all cases that would not have occurred if there had been no exposure

这个指标基本的原理就是用可以归因为暴露的病例数,除以总的病例数(O)。

可以归因为暴露的病例数则计算为总病例数(O)减去不能归因暴露的病例数(E)

所以总的PAF的理论表达就是(O???E)/O

where O and E refer to the observed number of cases and the expected number of cases under no exposure, respectively

对于一个前瞻性队列研究,我们先看下面的表格,把上面的思路走一遍:

1400个人得病的人(O),其中900个有暴露,500个没有暴露,所以我们只有500/1,400 = 0.357,也就是35.7%的得病可以归因为这个暴露。

上面的描述很简单,但是我们到此可以说如果我们将人群的暴露取消掉,原来的35.7%的人就不会得病了嘛?

仔细想想,也不对。因为人群中就算没有这个暴露也依然会发病的,这个叫would be if not exposed. 所以上面斜体部分描述的思路过程都是错误的,它并没有考虑清楚什么是不能归因为暴露的病例数(E)。

那么这个E怎么算呢?应该是没这个暴露也会发病的数900除以没暴露的总人数90000再乘以10000=100

就是说其实是有100人是没暴露也会发病的,所以这100人发病并非是暴露的作用,我们得扣掉它,剩下400,可以归因到这个具体的暴露:

所以我们的其实是400人可以归因,那么PAF=1400-(1400-400)/1400=0.286,最终我们得到28.6%患抑郁是因为孤独这个因素。这个28.6%就是暴露的人群归因分数。

上面的过程都是帮助大家理解的自我推导。

接下来我们给出PAF在前瞻性研究中的计算公式如下:

Population Attributable Fraction (PAF) = (proportion of cases exposed) x (attributable proportion in the exposed)

或者:

在上面的公式中,Ppop 为总人群暴露率,RR是风险比。

总人口暴露率在我们刚刚的例子中就是10000/100000=0.1

风险比就是两个风险的比,暴露组风险比上非暴露组风险,在我们的例子中就是500/10000=0.05比上非暴露组风险900/90000=0.01,然后风险比就是5.

然后我们套公式可以得到PAF=(0.1*4)/((0.1*4)+1)=0.286

可以看到我们的结果都是一样的。

上面介绍了RR与PAF,RR是我们知道暴露与否,是在前瞻性研究中的一个指标,接下来看OR与PAF

OR值与PAF

写之前还是再给大家补充下,有时候你会遇到PAR人群归因风险,这个和PAF也是一个东西

依然是给大家一个回顾性研究的四格表,此时我们是先知道结局:

我们的OR就是两个比值的比比值就是暴露比值

对于上表来说我们的结局为YES组的暴露比值为(a/(a+b)) ÷ (b/(a+b)) = a/b;结局为NO的暴露比值为(c/(c+d)) ÷ (d/(c+d)) = c/d

然后,两个比值的比OR就为(a/b)/(c/d)=ad/bc

我们是先知道结局才能算的OR,OR是回顾性研究的指标

上面的知识点仅供大家复习,当我我们的结局比较罕见的时候,RR OR HR都是可以通用的所以PAF的计算也是如上述公式

We can use valid estimates of hazard ratio (or rate ratio) from cohort studies or odds ratio from case-control studies instead of RR in the Miettinen PAF formula if the outcome is uncommon.

OR和RR的区别与联系

RR来评价暴露组研究对象的发病风险是非暴露组研究对象的多少倍?这个“多少倍” 就是RR。是前瞻性研究的指标。

比值比(Odds Ratio, OR)是在回顾性研究中评价暴露因素和疾病的关联强度的指标,评价的是发病与不发病两组暴露的比,同样可以说明暴露的影响。解释也和RR类似。

并且,在横断面研究中OR可以近似RR

The relative risk is often approximated by the odds ratio e.g. in cross-sectional studies.

刚刚也说到RR OR HR都是可以通用的,所以PAF的计算也是如上述公式,这儿有个前提条件就是结局比较罕见或者说结局的发生率比较低。

我们还是来看个具体例子,依然是个表格

对于上表,我们有:

RR = (20/1000) ÷ (10/1000) = 2

OR= (20×990) ÷ (10×980) = 2.02

因为此时的结局发生率只有30/2000=0.015,很小,所以RR和OR确实是不差多少的。

再看一个结局发生率比较高的:

此时我们有:

RR = (500/1000) ÷ (250/1000) = 2

OR = (500×750) ÷ (250×500) = 3

RR和OR展示了巨大的差异,就是因为结局的发生率有点高了,达到了750/2000=0.375.

所以我们只有在结局比较罕见或者说结局的发生率比较低的时候才能用OR估计RR从而得到PAF。

如何使用R计算PAF

上面的介绍都是用的4格表在介绍原理,真正的研究中我们还会控制各种因素后得到OR值,此时的PAF计算又需要重新考虑了。

比如对于一个二分类结局变量我们要做PAF用到的函数就是Af.cs。

Af.cs estimates the attributable fraction for a binary outcome Y under the hypothetical scenario where a binary exposure X is eliminated from the population. The estimate is adjusted for confounders Z by logistic regression (glm). Let the AF be defined as

AF = 1 - Pr(Y0 = 1) / Pr(Y = 1)

where Pr(Y0 = 1) denotes the counterfactual probability of the outcome

我现在有如下数据集,一个因变量Y,一个自变量X和协变量Z:

直接给出模型公式,指定好暴露变量就可以得到该暴露的PAF,具体代码如下:

AF.cs_est <- AF.cs(formula = Y ~ X + Z + X * Z, data = data, exposure = "X")
summary(AF.cs_est)

输出结果如下图:

也就是说在我的数据集中,如果去掉X这个暴露,就会减少大概18%的Y的发生。

小结

今天给大家写了PAF的意义和计算方法,顺带回顾了RR和OR的区别联系,希望可以给大家以启发。感谢大家耐心看完,自己的文章都写的很细,代码都在原文中,希望大家都可以自己做一做,请转发本文到朋友圈后私信回复“数据链接”获取所有数据和本人收集的学习资料。如果对您有用请先收藏,再点赞分享。

也欢迎大家的意见和建议,大家想了解什么统计方法都可以在文章下留言,说不定我看见了就会给你写教程哦,另欢迎私信。

如果你是一个大学本科生或研究生,如果你正在因为你的统计作业、数据分析、模型构建等发愁,如果你在使用SPSS,R,Python,Mplus, Excel中遇到任何问题,都可以联系我。因为我可以给您提供最好的,最详细和耐心的数据分析服务。

如果你对Z检验,t检验,方差分析,多元方差分析,回归,卡方检验,相关,多水平模型,结构方程模型,中介调节,量表信效度等等统计技巧有任何问题,请私信我,获取详细和耐心的指导。

If you are a student and you are worried about you statistical #Assignments, #Data #Analysis, #Thesis, #Reports, #Composing, #Quizzes, Exams.. And if you are facing problem in #SPSS, #R-Programming, #Excel, Mplus, then contact me. Because I could provide you the best services for your Data Analysis.

Are you confused with statistical Techniques like z-test, t-test, ANOVA, MANOVA, Regression, Logistic Regression, Chi-Square, Correlation, Association, SEM, multilevel model, mediation and moderation etc. for your Data Analysis...??

往期精彩

R数据分析:用R语言做潜类别分析LCA

R数据分析:ROC曲线与模型评价实例

R数据分析:用R语言做meta分析

R数据分析:贝叶斯定理的R语言模拟

R数据分析:如何用R做验证性因子分析及画图,实例操练

R数据分析:有调节的中介

R数据分析:如何用R做多重插补,实例操练

R数据分析:tidyverse中常用的解析函数总结

R数据分析:倾向性评分匹配完整实例(R实现)

R数据分析:手把手教你画列线图(Nomogram)及解读结果

R数据分析:多分类逻辑回归

R文本挖掘:社会网络分析

R文本挖掘:中文词云生成,以2021新年贺词为例

R文本挖掘:中文文本聚类

R数据分析:混合效应模型实例

R文本挖掘:文本聚类分析

R数据分析:逐步回归的做法和原理,案例剖析

R数据分析:非专业解说潜变量增长模型

R文本挖掘:词云图怎么做,worldcloud2初识

R数据分析:中介效应的做法

R数据分析:随机截距交叉滞后RI-CLPM与传统交叉滞后CLPM

R数据分析:中介作用与调节作用的分析与解释

R数据分析:多元逻辑斯蒂回归的做法

R数据分析:线性回归的做法和优化实例

R数据分析:层次聚类实操和解析,一看就会哦

R数据分析:交叉滞后模型非专业解释

R数据分析:如何做潜在剖面分析Mplus

R数据分析:生存分析的做法与解释续

R数据分析:主成分分析及可视化

R数据分析:资料缺失值的常见处理方法

R数据分析:竞争风险模型的做法和解释二

R数据分析:论文中的轨迹的做法,潜增长模型和增长混合模型

相关推荐

方差分析简介(方差分析通俗理解)

介绍方差分析(ANOVA,AnalysisofVariance)是一种广泛使用的统计方法,用于比较两个或多个组之间的均值。单因素方差分析是方差分析的一种变体,旨在检测三个或更多分类组的均值是否存在...

正如404页面所预示,猴子正成为断网元凶--吧嗒吧嗒真好吃

吧嗒吧嗒,绘图:MakiNaro你可以通过加热、冰冻、水淹、模塑、甚至压溃压力来使网络光缆硬化。但用猴子显然是不行的。光缆那新挤压成型的塑料外皮太尼玛诱人了,无法阻挡一场试吃盛宴的举行。印度政府正...

Python数据可视化:箱线图多种库画法

概念箱线图通过数据的四分位数来展示数据的分布情况。例如:数据的中心位置,数据间的离散程度,是否有异常值等。把数据从小到大进行排列并等分成四份,第一分位数(Q1),第二分位数(Q2)和第三分位数(Q3)...

多组独立(完全随机设计)样本秩和检验的SPSS操作教程及结果解读

作者/风仕在上一期,我们已经讲完了两组独立样本秩和检验的SPSS操作教程及结果解读,这期开始讲多组独立样本秩和检验,我们主要从多组独立样本秩和检验介绍、两组独立样本秩和检验使用条件及案例的SPSS操作...

方差分析 in R语言 and Excel(方差分析r语言例题)

今天来写一篇实际中比较实用的分析方法,方差分析。通过方差分析,我们可以确定组别之间的差异是否超出了由于随机因素引起的差异范围。方差分析分为单因素方差分析和多因素方差分析,这一篇先介绍一下单因素方差分析...

可视化:前端数据可视化插件大盘点 图表/图谱/地图/关系图

前端数据可视化插件大盘点图表/图谱/地图/关系图全有在大数据时代,很多时候我们需要在网页中显示数据统计报表,从而能很直观地了解数据的走向,开发人员很多时候需要使用图表来表现一些数据。随着Web技术的...

matplotlib 必知的 15 个图(matplotlib各种图)

施工专题,我已完成20篇,施工系列几乎覆盖Python完整技术栈,目标只总结实践中最实用的东西,直击问题本质,快速帮助读者们入门和进阶:1我的施工计划2数字专题3字符串专题4列表专题5流程控制专题6编...

R ggplot2常用图表绘制指南(ggplot2绘制折线图)

ggplot2是R语言中强大的数据可视化包,基于“图形语法”(GrammarofGraphics),通过分层方式构建图表。以下是常用图表命令的详细指南,涵盖基本语法、常见图表类型及示例,适合...

Python数据可视化:从Pandas基础到Seaborn高级应用

数据可视化是数据分析中不可或缺的一环,它能帮助我们直观理解数据模式和趋势。本文将全面介绍Python中最常用的三种可视化方法。Pandas内置绘图功能Pandas基于Matplotlib提供了简洁的绘...

Python 数据可视化常用命令备忘录

本文提供了一个全面的Python数据可视化备忘单,适用于探索性数据分析(EDA)。该备忘单涵盖了单变量分析、双变量分析、多变量分析、时间序列分析、文本数据分析、可视化定制以及保存与显示等内容。所...

统计图的种类(统计图的种类及特点图片)

统计图是利用几何图形或具体事物的形象和地图等形式来表现社会经济现象数量特征和数量关系的图形。以下是几种常见的统计图类型及其适用场景:1.条形图(BarChart)条形图是用矩形条的高度或长度来表示...

实测,大模型谁更懂数据可视化?(数据可视化和可视化分析的主要模型)

大家好,我是Ai学习的老章看论文时,经常看到漂亮的图表,很多不知道是用什么工具绘制的,或者很想复刻类似图表。实测,大模型LaTeX公式识别,出乎预料前文,我用Kimi、Qwen-3-235B...

通过AI提示词让Deepseek快速生成各种类型的图表制作

在数据分析和可视化领域,图表是传达信息的重要工具。然而,传统图表制作往往需要专业的软件和一定的技术知识。本文将介绍如何通过AI提示词,利用Deepseek快速生成各种类型的图表,包括柱状图、折线图、饼...

数据可视化:解析箱线图(box plot)

箱线图/盒须图(boxplot)是数据分布的图形表示,由五个摘要组成:最小值、第一四分位数(25th百分位数)、中位数、第三四分位数(75th百分位数)和最大值。箱子代表四分位距(IQR)。IQR是...

[seaborn] seaborn学习笔记1-箱形图Boxplot

1箱形图Boxplot(代码下载)Boxplot可能是最常见的图形类型之一。它能够很好表示数据中的分布规律。箱型图方框的末尾显示了上下四分位数。极线显示最高和最低值,不包括异常值。seaborn中...