多元相关与回归分析及R使用 - part1

本章为MOOC《多元统计分析与R语言建模》课程的第4章,内容明显比前两章多多了。

4.1变量间的关系分析

变量间的关系及分析方法

2020-02-19 17-52-35屏幕截图.png

两变量线性相关系数

  • 样本的线性相关系数

r = \frac {s_{xy}}{\sqrt{{s_x^2}{s_y^2}}} = \frac {l_{xy}}{\sqrt{l_{xx}l_{yy}}} = \frac {\sum{(x-\overline x)(y - \overline{y})}}{\sqrt{(x-\overline x)^2(y - \overline y)^2}}

  • 相关系数的假设检验步骤:

    • 建立假设检验:H_0:\rho = 0,H_1:\rho ≠ 0, \alpha = 0.05
    • 计算相关系数rt值:t = \frac{r-0}{\sqrt{\frac {1-r^2}{n-2}}}
    • 计算P值,作结论:若P < 0.05,便可在\alpha = 0.05的水准上拒绝H_0,接受H_1
  • R语言函数

  • 相关系数计算函数
    cor(x,y=NULL,method=c("pearson","kendall","spearman"))
    x为数值向量、矩阵或者数据框,y为空或数值向量、矩阵或数据框;
  • 相关系数假设检验函数
    cor.test(x,y)

两变量间的回归分析

回归分析研究两边量之间的依存关系,变量区分出自变量和因变量,并研究确定自变量和因变量之间的具体关系的方程形式,即回归模型,其中以一条直线方程表明两边量依存关系的模型叫单变量(一元)线性回归模型。其主要步骤包扩:建立回归模型求解回归模型中的参数对回归模型进行检验等。

  • 直线方程模型为:\hat y = \alpha + bx

  • 一元线性回归模型的参数估计(最小二乘法):
    b = \frac {\sum_{i=1}^n{(x_i - \overline x)(y_i - \overline y)}}{\sum_{i=1}^n{(x_i - \overline x)^2}} , \alpha = \overline y - b\overline x

  • 回归系数的假设检验,方法有二:

(1) 方差分析:

也就是对整个模型进行检验,大致步骤如下:

  • 建立假设检验:H_0:所有回归系数都等于0,\alpha=0.05;

  • 计算统计量F

    F = \frac{MS_R}{MS_E}

    其中:

    MS_R = \frac {SS_R}{df_R},MS_E = \frac {SS_E}{df_E} \\ SS_R = \sum_{i=1}^n{(\hat y_i - \overline y)} = b\sum_{i=1}^n{(y_i - \overline y )(x_i - \overline x)} = bl_{xy} \\ SS_E = \sum_{i=1}^n{(y_i - \overline y_i)^2 - \sum_{i=1}^n{(\hat y_i - \overline y)^2}}

  • 计算P值,作结论:若P < 0.05,便可于\alpha = 0.05的水平处拒绝H_0,即回归系数具有统计学意义,因变量与自变量之间存在直线回归关系。

    (2) t检验:

也就是单独对回归系数进行检验,相对应的零假设就是某个回归系数等于零。统计量为:

t = \frac{b - \beta}{s_b}\ \tilde{~}\ t(n-2)
其中:

S_b = \frac{S_{y,x}}{\sqrt{\sum_{i=1}^n(x_i - \overline x)}} = \frac{S_{y,x}}{\sqrt{l_{xx}}} \\ S_{y,x} = \sqrt{\frac{\sum_{i=1}^n(y_i - \hat y_i)^2}{n-2}} = \sqrt{\frac{SSE}{n-2}}= \sqrt{MSE}

  • R语言函数
  • 线性拟合函数:
    lm(formula,data)
  • 添加回归线:
    abline(model)
  • 模型方差分析:
    anova(model)
  • 回归系数t检验:
    summary(model)

4.2 多元线性回归分析

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

从多元线性模型的回归矩阵形式y = \mathbf{X}\beta + \epsilon可知,若模型的参数\beta已获得,则\hat y = \mathbf X \hat \beta,于是残差e_i = y_i - \hat y_i,根据最小二乘的原理,所选择的估计方法应是估计值\hat y_i与观察值y_i之间的残差e_i在所有样本点上达到最小,即使:
Q = \sum_{I=1}^n(y_i - \hat{y}^2) = e^{'}e = (y - \mathbf{X}\hat \beta)^{'}(y-\mathbf{X}\hat{\beta})达到最小,根据微积分求极值的原理,Q\beta求导且等于0,可求得使Q达到最小的\hat \beta,这就是所谓的最小二乘(LS)法。

多元回归参数的统计检验

多元回归的假设检验同样也可用方差分析以及t分析,只不过统计量的计算方法有所不同:

  • 多元回归方差分析:

F = \frac{MS_R}{MS_E}\ \tilde{~}\ F (p,n - p - 1)

其中:

MS_R =\frac{SS_R}{df_R} = \sum_{i=1}^n{\frac{(\hat{y_i} - \overline{y})^2}{p}} MS_E = \frac{SS_E}{df_E}
方差分解为:
SS_r = \sum_{i=1}^n(y_i - \overline{y})^2 = \sum_{i=1}^n(y_i - \hat{y_i})^2 + \sum_{i=1}^n(\hat{y_i} - \overline{y})^2 = SS_R + SS_E

  • 回归系数的t检验:

t_j = \frac{\hat{\beta_j} - \beta_j}{s_{\hat{\beta_j}}},j=1,2,\cdots,p

标准化回归系数

在多元线性回归方程中,由于各自变量的单位不同,得到的回归系数也就有不同的量纲,因此,回归系数的大小只能表明变量与因变量在数量上的关系,而不能表示各自变量在回归方程的重要性。要比较各个自变量的重要性必须消除单位的影响,为此,在做线性回归时需要对变量值作标准化的变换,即变量减去其均值并除以其标准差的估计,由此得到的回归系数被称为标准化系数。

因为标准化系数没有单位,可用其绝对值大小来说明多元回归模型中各自变量的相对重要性,标准化系数的含义是当自变量增加一个单位时,因变量增加或减少的单位数,它与原来未标准化的多元回归系数的关系为:

\hat{\beta}^{'} = \hat{\beta_i}\frac{s_i}{s_y}(i = 1,2,\cdots,p)

可以看出,标准化系数不仅与自变量的回归系数相关,而且与这个自变量的波动程度有关。如果波动程度较大(自变量的标准差较大),自变量就会显得较为重要,否则就显得不太重要。然而在利用上式求解标准化系数时,没有考虑各变量间是否存在交互作用

  • R语言函数
library(mvstats)
coef.sd(model) #计算标准化回归系数

4.3 多元相关分析

在相关分析中,研究较多的是两个变量之间的关系,称为简单相关;当涉及到的变量为3个或以上时,称为偏相关复相关

设样本矩阵为:
\begin{bmatrix} x_{11} & x_{12} & \cdots & x_{1p} \\ x_{21} & x_{22} & \cdots & x_{2p} \\ \cdots & \cdots & \cdots & \cdots \\ x_{n1} & x_{n2} & \cdots & x_{np} \end{bmatrix}

此时任意两个变量间相关系数构成的矩阵为:

R ={\begin{bmatrix} r_{11} & r_{12} & \cdots & r_{1p} \\ r_{21} & r_{22} & \cdots & r_{2p} \\ \cdots & \cdots & \cdots & \cdots \\ r_{p1} & r_{p2} & \cdots & r_{pp} \end{bmatrix} } = {\begin{bmatrix} 1 & r_{12} & \cdots & r_{1p} \\ r_{21} & 1 & \cdots & r_{2p} \\ \cdots & \cdots & \cdots & \cdots \\ r_{p1} & r_{p2} & \cdots & 1 \end{bmatrix} } = (r_{ij})_{p*p}

其中r{ij}为任意两变量之间的简单相关系数:

r_{ij} = \frac{\sum_{ij}(x_i - \overline{x})(y_i - \overline{y})}{\sqrt{\sum_i(x_i - \overline{x})^2 \sum_j(y_j - \overline{y})^2}}

  • R语言函数
  • 多元数据相关系数矩阵计算函数:cor()
  • 相关矩阵检验函数:mvstats::corrtest()

复相关分析

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

假定回归模型为:

y = \beta_0 + \beta_1x_1 + \beta_2x_2 + \cdots + \beta_px_p + e
\hat y = b_0 + b_1x_1 + b_2x_2 + \cdots + b_px_p

复相关系数计算公式为:
R = \sqrt{\frac{\sum{(\hat{y_i} - \overline{y})^2}}{\sum{(y_i - \overline y})^2}} = \sqrt{\frac{SS_R}{SS_T}}
决定系数为:
R^2 = \frac{SS_R}{SS_T}

  • R语言代码
  • 显示多元线性回归模型决定系数:R2= summary(model)$r.sq
  • 显示多元数据复相关系数:R = sqrt(R2)
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容