分享

干货 | 手把手带你入门回归分析,两个实例一学就会

 解螺旋 2020-08-27


作者:解螺旋.叶子

如需转载请注明来源:解螺旋·医生科研助手

导语

为了确定两种或两种以上变量间相互依赖的定量关系,参数及非参数检验都不好使。这里就要用到回归分析。这里介绍简单的线性回归和Logistic回归在SPSS中怎么去做。

除了资料相互之间进行比较的统计学方法外,临床研究中还存在另外一种情况:研究2组资料之间是否相互联系。先看一个具体例子:

 
12名大一女生体重与肺活量

这里,如果我们想要研究肺活量是否随体重变化而变化,就要用到统计学上一种重要的统计方法:回归分析。先看一个简单的方程式:ŷ=a+bx。怎么样?象不象初中学的最简单的一次函数?其实,这就是最简单的一次函数。只是统计学家们给它起了个高大上的名字:回归方程。如果将两个事物的取值分别定义为变量x和y,x为自变量,y为因变量,即y因为x的变化而变化。在上面这个例子中,体重就是x,而肺活量就是y。

一般而言,回归分析的数据需要满足以下四个条件:

1. 线性趋势:x和y的关系是线性的。如果不是,则不能进行线性回归分析;

2. 独立性:因变量y的取值相互独立,它们之间没有联系;

3. 正态性:因变量y的取值呈正态分布;

4. 方差齐性:因变量y的方差相同。

后两个条件其实没有这么重要。一般的临床研究只是建立回归方程,探讨x和y的关系,后两个条件不用管它们。那么如何判断x和y的关系是否是线性的呢?这就要用到另外一个重要的工具:散点图。散点图就是数据(x,y)在直角坐标系上的分布图。这其实也是初中代数的内容。


图1,图2和图3都有明显的线性关系。只不过图1,图2是直线,图3是曲线。而图4却杂乱无章,不成线性关系。所以,判断x和y的关系是否是线性关系就是做散点图。

现在市面上的统计学软件,比如SPSS,都可以做散点图和计算回归方程。我们只要输入一系列x值和y值。结果会输出a值和b值。就形成了一个回归方程。

上面那个例子:ŷ=0.000419+0.058826x。这里,如果b﹥0,则y随着x的增大而增大,反映在散点图上,就是一条斜向上的直线;如果b﹤0,则y随着x的增大而减小,反映在散点图上,就是一条斜向下的直线。∣b∣越大,y随x的变化越大,反映在散点图上,直线越陡峭。

另外,回归方程还可以揭示变量x对变量y 的影响大小,可以由回归方程进行预测和控制。即根据一个特定的x值,就可以计算出一个特定的y值。

上面那个例子中,自变量和因变量都只有1个,如果自变量多于1个的情况下怎么办?还是回到上面那个例子:现在,我们有12名一年级女大学生体重,身高与肺活量的数据。如果我们想要研究肺活量是否随体重和身高变化而变化?体重和身高,那个指标对肺活量的影响更大。这就要用到统计学上另一种重要的统计方法:多元线性回归分析。

多元线性回归分析

还是用女大学生的例子,但是增加了一组自变量。现在,我们有12名一年级女大学生体重,身高与肺活量的数据。


12名大一女生的体重,身高与肺活量

如果我们想要研究:肺活量是否随体重和身高的变化而变化?体重和身高,哪个指标对肺活量的影响更大?这里就要用到统计学上另一种重要的统计方法:多元线性回归分析。多元线性回归分析就是研究一个因变量(这里是:肺活量)和多个自变量(这里是:体重和身高)之间的关系。

和一元线性回归方程差不多,多元线性回归方程只是增加了一个自变量而已:ŷ=a+b1x1+ b2x2。 x1和x2为2个自变量,y为因变量。在上面这个例子中,身高是x1;体重是x2;而肺活量就是y。如果通过计算,得出a=-0.5657;b1=0.005017;b2= 0.05406。那么这个方程就可以写作:ŷ=-0.5657+0.005017x1+ 0.05406x2。

b1=0.005017,表示在X2,即体重不变的情况下,身高每增加1cm,肺活量增加0.005017L。利用多元线性回归方程,还可以进行预测和预报。例如x1 =166,x2=46,代入公式,就可以得出ŷ=2.75。这表示:所有身高为166 cm,体重为46公斤的一年级女大学生,估计的平均肺活量为2.75 L。

那么,现在问题变得简单了,我们只需要算出a和b即可得到方程式。聪明的同学们可能已经猜到我下面要说什么了。那就是,计算机。现在的大部分统计学软件都可以做多元线性回归分析了。以最常用的SPSS为例,输出的结果如下图所示:


要注意的就是红圈标注的三个数字,它们就是a,b1和b2。另外,如果要判断几个自变量谁对因变量的影响更大,就看的标准系数。就是图中蓝圈标注的二个数字。在这里,显然身高对肺活量的影响更大。

另外,在多元线性回归中还存在一个自变量选择的问题。这是因为:不是所有的自变量都对因变量有意义。例如,我们在上一个例子中再引入一组血压的数据,这个血压就很有可能和肺活量完全风马牛不相及。自变量选择的方法有前进法,后退法和逐步法。一般采用逐步法就可以取得满意的结果。而这一切的一切,计算机都是可以代劳的。下图所示的就是SPSS进行逐步法的界面,在红圈标注的下拉菜单里选择stepwise(逐步法)即可。


输出的结果会自动告诉你哪些自变量被包括了;哪些自变量被排除了。

Logistic回归分析

在临床研究中,很少出现上面这两种简单的情况,回归分析更多的是为了找到危险因素。比如,为了研究老年患者颅脑手术后发生死亡的危险因素,研究人员总结出了以下几个可能的危险因素:年龄,肿瘤的性质,高血压,心功能不全,糖尿病。那么,在这些可能的危险因素里面,哪些是真正有危险的?并且,哪种危险因素的危险性最高呢?

这里要注意到的是:与上两个例子不同的是,这里的数据都是分类变量。因变量的取值仅有两个:死亡与生存。自变量的取值也仅有两个:如肿瘤的良性与恶性,高血压的有与无。这时候,就要用到另外一种重要的回归分析方法:Logistic回归分析。

Logistic回归是一种概率分析,即分析当暴露因素为x时,个体发生某事件(y)的概率的大小。Logistic的方程式为y=β0+β1X1+β2X2+…βmXm。怎么样?看着眼熟吧?

β1,β2…βm称为回归系数,反映了在其他变量固定后,x=1与x=0相比发生y事件的概率

回归系数β与OR

X与y的关联

β=0,OR=1

β﹥0,OR﹥1

β﹤0,OR﹤1

无关

有关,危险因素

有关,保护因素

记住OR越大,发生结果的可能性越大。因为这类资料是分类资料,所以在做Logistic回归分析之前的第一件事就是赋值。顾名思义,就是把分类资料赋予一定的数值。一般赋予0或者1的数值。阴性或者较轻的情况赋予0;阳性或者较重的情况赋予1。如下表所示。

危险因素

赋值说明

X1 年龄

X2 肿瘤性质

X3 高血压

X4 心功能不全

X5 糖尿病

<70=0,>70=1

良性=0,恶性=1

无=0,有=1

无=0,有=1

无=0,有=1

赋值完成之后,就可以正式开始Logistic回归分析了。我们还是以最常用的统计学软件SPSS为例,得出的结果如下表所示。


红圈标注的数字,就是Logistic的方程式中的β0和回归系数。把相应的数字代入方程式,就可以得出Logistic回归方程式: y=-9.561+0.098X1+0.066X2+0.058X3-1.013X4+0.075X5。那么,如何判断在这些可能的危险因素里面,哪些是真正有危险的?这就需要看紫圈标注的数字,如果p﹤0.05,就认为是真正的危险因素;如果p﹥0.05,就认为不是危险因素。这个例子里就是心功能不全。另外,如何判断哪种危险因素的危险性最高呢?那就要看蓝圈标注的最后一列数字。这列数字其实就是OR。数值越大,表明发生结果的概率越大。在这个例子里面,年龄的危险性最高。

另外,Logistic回归分析对样本量是有一定要求的。这里有个简单的估算方法:样本量为自变量个数的10倍在本文的例子中,有5个自变量,那么就要有至少50位患者的数据,才能进行Logistic回归分析。

这两种回归分析是最常用,也是最简单的。其他还有Cox回归和Poisson回归,要深入系统的学习统计的话,就来报名解螺旋《医学统计实战培训班》吧。

本课程讲者作为一名临床一线的医生,将从一个临床医生的视角讲解医学统计学,力求更贴近医生以及医学生的思维方式。通过2天系统的学习可以应付大多数的临床科研论文写作过程中的统计学问题。


    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多