4.多元相关与回归分析

概括:

  1. 变量间的关系分析
    • 变量间的关系
    • 简单线性相关
    • 简单线性回归
  2. 多元线性回归
    • 线性模型建立
    • 线性模型检验
  3. 多元线性相关分析
    • 多元线性相关
    • 复相关分析
  4. 回归变量选择方法
    • 变量选择准则
    • 逐步回归分析

变量间的关系与分析方法

一、变量间的关系分析

数据输入:读取身高与体重的数据

x1=c(171,175,159,155,152,158,154,164,168,16 6,159,164) 
x2=c(57,64,41,38,35,44,41,51,57,49,47,46)

直观分析:图示法(通过散点图看身高与体重的关系)

plot(x1,x2)

建立离均差乘积和函数

lxy <- function(x,y) sum(x*y)-sum(x)*sum(y)/length(x)

用离均差乘积和计算相关系数:

r=lxy(x1,x2)/sqrt(lxy(x1,x1)*lxy(x2,x2)) r
[1] 0.9593

或者用:

cor(x1,x1)

计算t值和P值,作结论:

cor.test(x1,x2)#相关系数假设检验
Pearson's product-moment correlation data: x1 and x2 t = 10.743, df = 10, p-value = 8.21e-07
alternative hypothesis: true correlation is not equal to 0 95 percent confidence interval:
0.8574875 0.9888163 sample estimates:
cor
0.9593031

由于P = 8.21e-07 < 0.05, 由于α =0.05在水准上拒绝Ho ,接受H1,可认为该人群身高与体重呈现正的线性关系。

概念: 回归分析研究两变量之间的依存关系,变量区分出自变量和因变量,并研究确定自变量和因变量之间的具体关系的方程形式。分析中所形成的这种关系式称为回归模型,其中以一条直线方程表明两变量依存关系的模型叫单变量(一元)线性回归模型。其主要步骤包括:

  1. 建立回归模型
  2. 求解回归模型中的参数
  3. 对回归模型进行检验等。

直线方程的模型为: y = a + bx

x=x1#因变量,数据来自例2.2

y=x2#因变量,数据来自例2.2

b=lxy(x,y)/lxy(xx)#线性回归方程斜率

a=mean(y)-b*mean(x)#线性回归方程截距

c(a=a,b=b)# 显示线性回归方程估计值

ab -140.36436 1.15906

模型的方差分析(ANOVA)

lm(formula = y ~ x, data = yx)

anova(fm)

summary(fm)

二、多元线性回归

多元回归参数的最小二乘估计:

从多元线性回归模型的矩阵形式 y= X β + ε 可知,若模型的参数β的估计量 $\hat β $ 已获得,则$\hat y = X \hat β $,于是残差 $ e_{i} =y_{i} - \hat{y}_{i}$,根据最小二乘的原理,所选择的的估计方法应是估计值 $\hat{y}_{i}$与观察值yi之间的残差ei在所有样本点上达到最小,即使 $$ Q = \sum_{i=1}^{n} (y_{i} - \hat{y}_{i})^{2} = e'e = (y-X \hat{β})'(y - X \hat{β})$$

达到最小,根据微积分求极值的原理,Q对β求导且等于0 ,可求得使Q达到最小的$\hat β $,这就是所谓的最小二乘(LS)法。

三、多元相关分析

在相关分析中,研究较多的是两个变量之间的关系,称为简单相关;但涉及到变量为三个或者三个以上时,称为偏相关或复相关。实际上,偏相关和复相关是对简单相关的一种推广。

续例4.4)财政收入与其他变量间的相关分析。 计算财政收入和国民生产总值及税收、 进出口贸易总额、经济活动人口两两之间相关系数, 表4.9给出了相关系数的假设检验统计量。 首先我们计算变量两两间的相关系数

复相关分析:

在实际分析中,一个变量的变化往往要受到多种变量的综合影响,这时就需要采用复相关分析方法。所谓复相关,就是研究多个变量同时与某个变量之间的相关关系,度量复相关程度的指标是复相关系数。

四、回归变量的选择方法

多元回归分析主要用途:

  1. 用于描述解释现象, 这时希望回归方程中所包含的 自变量尽可能少一些
  2. 用于预测, 这时希望预测的均方误差较小
  3. 用于控制,这时希望各回归系数具有较小的方差和 均方误差

变量太多,容易引起的问题:

  1. 变量多增加了模型的复杂
  2. 计算量增大
  3. 估计和预测的精度下降
  4. 模型应用费用增加

解决办法:

  1. 全部子集法
  2. 向后删除法
  3. 向前引入法
  4. 逐步回归法

全局最优法(全部子集法)

从理论上说,自变量选择最好的方法是所有可能回归法,即建立因变量和所有自变量全部子集组合的回归模型,也称全部子集法。

对于每个模型,在实用上,从数据与模型拟合优劣的直观考虑出发,基于残差(误差)平方和的变量选择准则使用的最多。

library(leaps) #加载leaps包 
varsel=regsubsets(y~x1+x2+x3+x4,data =yX)
result=summary(varsel) data.frame(result$outmat,RSS=result$ rss,R2=result$rsq)

R2和RSS准则优 :

  • 具有较大R2的对较少自变量的模型应该是好的选择, 较大的意味着有好的拟合效果,而较少的变量个 数可减轻信息的收集和控制
  • 对于有个自变量的回归模型来说,当自变量子集在 扩大时,残差平方和随之减少。因此,如果按RSS“愈 小愈好”和按R2”愈大愈好”的原则来选择自变量子 集,则毫无疑问应该选全部自变量

变量选择的常用标准:

  • 平均残差平方和最小准则
  • 误差均方根MSE最小准则
  • 校正复相关系数平方(Adjusted R2)准则
  • Cp准则
  • AIC准则BIC准则

全局择优法的缺陷:

如果自变量个数为4,则所有的回归有15个,当自变 量个数为10时,所有可能的回归为1023个,…,当自 变量数个数为50时,所有可能的回归为1015个,当p 很大时,数字2p大得惊人,有时计算是不可能的,于 是就提出了所谓逐步回归的方法.

逐步回归分析

在作实际多元线性回归时常有这样情况, 变量x1,x2,…xp 相互之间常常是线性相关的,即在x1,x2,…xp中任何两个 变量是完全线性相关的, 即相关系数为1,则矩阵XTX的秩 小于p,XTX就无解。当变量x1,x2,…xp中任有两个变量存 在较大的相关性时, 矩阵XTX处于病态, 会给模型带来很 大误差。因此作回归时, 应选变量x1,x2,…xp中的一部分 作回归, 剔除一些变量。逐步回归法就是寻找较优子空 间的一种变量选择方法

逐步变量选择的方法:

  • 向前引入法
  • 向后剔除法
  • 逐步筛选法

R语言代码:

fm=lm(y~x1+x2+x3+x4, data=yX) fm.step=step(fm,direction="forward") #向前引入法变量选择结果

fm.step=step(fm,direction="backward") #向后剔除法变量选择结果

fm.step=step(fm,direction="both") #逐步筛选法变量选择结果

参考资料

暨南大学 王斌会老师 《多元统计分析及R语言建模》课件

个人公众号,比较懒,很少更新,可以在上面提问题:

更多精彩,请移步公众号阅读:

Sam avatar
About Sam
专注生物信息 专注转化医学