精华内容
下载资源
问答
  • 本课程为基于Python的数据分析和统计建模高级课程,针对多元线性回归模型的各种参数和统计量,通过Python代码手工复现,在代码复现的过程中结合数学公式和原理进行深入解读。这些统计量包括:回归系数参数估计、决定...
  • ##作业:分析影响中国人口自然增长主要原因,并建立人口自然增长率与各经济因子之间的多元回归模型,并对建立模型进行统计检验包括拟合优度、F检验、t 检验,并用多元逐步回归方法解决多重共性问题。...

    ##作业:分析影响中国人口自然增长的主要原因,并建立人口自然增长率与各经济因子之间的多元回归模型,并对建立的模型进行统计检验(包括拟合优度、F检验、t 检验,并用多元逐步回归方法解决多重共性问题。

    %基于矩阵运算的多元线性回归分析
    %参数估计
    x1=[15037 17001 18718 21826 26937 35260 48108 59811 70142 78061 83024 88479 98000 108068 119096 135174 159587 184089 213132];
    x2=[18.8 18 3.1 3.4 6.4 14.7 24.1 17.1 8.3 2.8 -0.8 -1.4 0.4 0.7 -0.8 1.2 3.9 1.8 1.5];
    x3=[1366 1519 1644 1893 2311 2998 4044 5046 5846 6420 6796 7159 7858 8622 9398 10542 12336 14040 16024];
    y=[15.73 15.04 14.39 12.98 11.6 11.45 11.21 10.55 10.42 10.06 9.14 8.18 7.58 6.95 6.45 6.01 5.87 5.89 5.38];
    x=[x1;x2;x3]; %向量合并为矩阵
    X=[ones(length(y),1) x’]; %在矩阵中加入常数向量并转置
    Y=y’; %因变量向量转置
    [m,n]=size(x); %计算自变量矩阵的行列数
    B=inv(X’*X)*X’Y; %计算回归系数
    Yp=X
    B; %建立预测模型

    %计算用于检验的统计量
    R2=(abs(B’X’Y)-nmean(y)2)/(abs(Y’*Y)-n*mean(y)2);
    %计算复相关系数
    Radj2=R2-(1-R2)
    (m+1)/(n-m-1); %计算校正相关系数平方
    s=sqrt((Y’*Y-B’*X’*Y)/(n-m-1)); %计算标准误差
    v=s/mean(y); %计算变异系数
    F=(abs(B’*X’Y)-nmean(y)2)/(m*s2); %计算F统计量
    e=Y-Yp; %计算残差
    i=1:n-1; %残差编号
    DW=sumsqr(e(i+1)-e(i))/sumsqr(e); %计算Durbin-Watson统计量

    %计算偏自相关系数
    i=1:n;j=1:m+1; %定义矩阵元素编号
    Xy=[x’ Y]; %将变量合并为一个新矩阵
    M=mean(Xy(:,j)); %计算各个变量的均值
    S=std(Xy(:,j)); %计算各个变量的标准差
    Mv=M(ones(n,1)😅; %均值向量平移为矩阵
    Sv=S(ones(n,1)😅; %标准差向量平移为矩阵
    Xs=(Xy-Mv)./Sv; %数据标准化
    Rs=cov(Xs); %计算简单相关系数矩阵
    C=inv(Rs); %计算简单相关系数矩阵的逆矩阵
    Cjy=C(:,m+1); %提取逆矩阵的末列
    Cjj=diag©; %提取逆矩阵的对角线元素
    Pr=-Cjy./((Cjj*C(m+1,m+1)).^0.5); %计算偏相关系数
    Rjy=Pr(1:m); %提取自变量的偏相关系数

    %计算t统计量
    i=1:n;j=1:m; %定义矩阵元素编号
    xt=x’; %自变量矩阵转置
    M=mean(xt(:,j)); %计算自变量均值
    N=M(ones(n,1)😅; %均值向量平移为矩阵
    Z=xt-N; %变量中心化
    P=Z’Z; %计算自变量的交叉乘积和
    D=inv§; %交叉乘积和矩阵求逆
    d=diag(D); %提取逆矩阵的对角线元素
    sb=d.^0.5
    s; %计算参数标准误差
    b=B(2:m+1); %提取回归系数
    T=b./sb; %计算t统计量

    %给出部分计算结果
    B,R2,s,F,DW,T,Rjy %给出参数和统计量的计算值

    %借助相关系数矩阵计算共线性容忍度和相应的VIF值
    % x1=[15037 17001 18718 21826 26937 35260 48108 59811 70142 78061 83024 88479 98000 108068 119096 135174 159587 184089 213132];
    % x2=[18.8 18 3.1 3.4 6.4 14.7 24.1 17.1 8.3 2.8 -0.8 -1.4 0.4 0.7 -0.8 1.2 3.9 1.8 1.5];
    % x3=[1366 1519 1644 1893 2311 2998 4044 5046 5846 6420 6796 7159 7858 8622 9398 10542 12336 14040 16024];
    x=[x1;x2;x3]; %自变量向量合并为矩阵
    [m,n]=size(x); %计算矩阵的行列数
    i=1:n;j=1:m; %定义矩阵元素编号
    X=x’; %自变量矩阵转置
    M=mean(X(:,j)); %计算各个变量的均值
    S=std(X(:,j)); %计算各个变量的标准差
    Mv=M(ones(n,1)😅; %均值向量平移为矩阵
    Sv=S(ones(n,1)😅; %标准差向量平移为矩阵
    Xs=(X-Mv)./Sv; %数据标准化
    Rs=cov(Xs); %计算简单相关系数矩阵
    C=inv(Rs); %计算简单相关系数矩阵的逆矩阵
    VIF=diag©; %提取对角线上的VIF值
    Tol=ones(m,1)./VIF; %计算容忍度Tol值
    Col=[[j]’ Tol VIF]; %提取自变量的偏相关系数

    %输出多重共线性判断计算结果
    Rs

    后话:本人只是搬运工,文章非原创!如有错误,请指出。

    展开全文
  • 文章目录1. 单参数显著性检验——t检验2. 回归方程显著性检验——F检验3. 拟合优度评价指标I——R方/改进R方4. 拟合优度评价指标AIC/BIC/SIC写在最后...欢迎感兴趣小伙伴来跟作者一起挑刺儿~ 包括但不限于语言上...

    【更新日志】
    5/1/2020 对文章中公式与措辞中存在的问题进行修正(感谢评论区小伙伴的指正!)


    1. 前文回顾

    在上一篇文章中,我们分别研究了最小二乘估计量 β^OLSσ^OLS 的相关性质,证明了 β^OLSβ 的一个最优线性无偏估计量(BLUE)σ^2OLSσ2 的一个无偏估计量,并得到了其在正态性误差假设下所对应的分布:
    β^OLSN(β,σ2(XTX)1) \bm{\hat\beta}_{OLS} \thicksim N(\bm\beta, \sigma^2 ( \bm{X}^T \bm{X} )^{-1} ) σ^OLS2σ2χNp12 \frac {\hat \sigma _{OLS}^2} {\sigma^2} \thicksim \chi^2_{N-p-1}

    (详情请见:【统计学习系列】多元线性回归模型(三)——参数估计量的性质)。

    通过最小二乘法拟合好模型的参数后,一个重要的问题就是:这个模型真的“好"吗?满足什么条件、什么性质的模型可以称作一个“好模型”呢?


    2. 单参数显著性检验——t检验

    2.1 问题的提出

    首先,我们应该想到的问题是,在一个多元回归模型中,是不是每一个引入的自变量对因变量都有实实在在的影响呢?这样的影响是显著的吗?我们应不应该在模型中保留这一变量呢?

    在回答这些问题之前,我们先回顾一下总体模型:
    Y=β0+i=1pXiβi+ϵ Y= \beta_0 + \sum_{i=1}^{p} X_{i} \beta_i + \epsilon 其中:
    ϵN(0,σ2) \epsilon \thicksim N(0,\sigma^2)
    让我们聚焦众多参数中的一个:βiβi 的意义是什么呢?当其他变量保持不变,而只有 Xi 变动时,每变动一个单位的 Xi,就会让 Y 平均变动 βi 个单位。而若 Xi 的变动能够确确实实引起 Y 的变动, 那么 βi 应该不等于0。换句话说,若可以验证 βi 不为0,那么就可以证明XiY 存在线性相关关系

    【注1】 这里的关系是线性的。二次即更高阶的相关性并不能由 βi 是否等于0体现;
    【注2】 XiY 存在相关关系,并不能证明二者之间存在 因果关系(Causality)

    然而,我们现在只有 βi 的估计量 β^OLS,i ,而估计量与参数的真实值有一定的误差。由于 β^OLS,i 是一个统计量,因此只要我们在统计意义下验证 βi 是否等于零就可以了。

    至此,我们就可以构造一个如下的假设检验问题:

    H0:βi=0H1:βi0 H_0: \beta_i=0 \\ H_1: \beta_i\ne0

    2.2 检验统计量——t统计量的构造

    若想构造检验统计量,我们需要先对 β^OLS,i 进行变型。

    记矩阵 (XTX)-1 的对角线元素:

    diag(XTX)1=(vi,i)p+1 \text{diag}(\bm{X}^T \bm{X} )^{-1} = (v_{i,i})_{p+1}

    由第一部分中 β^OLS 服从的分布,我们可以得到 β^OLS,i 的分布:

    β^OLS,iN(βi,σ2vi,i), i=0,1,...,p \hat\beta_{OLS, i} \thicksim N(\beta_i, \sigma^2 v_{i,i}) , \ i=0, 1,...,p

    β^OLS 标准化,有:
    β^OLS,iβiσvi,iN(0,1), i=0,1,...,p \frac {\hat\beta_{OLS,i} - \beta_i}{ \sigma \sqrt{v_{i,i}} } \thicksim N(0, 1) , \ i=0, 1,...,p

    然而,此时总体标准差σ 为未知参数,因此需要用样本标准差 σ^ 来代替。由于 σ^2OLS 有分布:

    (NP1)σ^OLS2σ2χNp12 \frac {(N-P-1) \hat \sigma _{OLS}^2} {\sigma^2} \thicksim \chi^2_{N-p-1}

    t 分布的定义:
    (Np1)(β^OLS,iβi)σvi,i/(Np1)σ^OLS2σ2=β^OLS,iβiσ^vi,itNp1 \frac {\sqrt{(N-p-1)} (\hat\beta_{OLS,i} - \beta_i ) } { \sigma \sqrt{v_{i,i}} } / \sqrt{\frac {(N-p-1)\hat \sigma _{OLS}^2} {\sigma^2} } \\ =\frac {\hat\beta_{OLS,i} - \beta_i}{\hat \sigma \sqrt{v_{i,i}} } \thicksim t_{N-p-1}
    若原假设 H0 成立,即 βi = 0,可以定义 t 统计量(又称 t 值):
    t=β^OLS,iσ^vi,itNp1 t= \frac {\hat\beta_{OLS,i}}{\hat \sigma \sqrt{v_{i,i}} } \thicksim t_{N-p-1}

    并称上式分母项β^OLS,i标准误(Standard Error, SE)

    t 统计量的定义式可以看出,t绝对值越大β^OLS,i 越不等于0原假设越有可能出错我们越应该拒绝原假设

    注1t 值的几何意义为 β^OLS,i 偏离其标准误的单位数
    注2:当N足够大时,t 统计量近似服从标准正态分布,因此可以使用标准正态分布进行替代。关于 t 分布与正态分布的关系,可参考文献[1] t分布收敛于标准正态分布的几种证明方法
    注3:关于t分布与t检验相关的更多知识,可参考文献[2] 我懒得找了

    2.3 拒绝域的构造

    然而,t 统计量多大算大呢?多大我们才应该拒绝原假设呢?

    假设原假设 H0 正确,根据 t 统计量所对应的分布,在给定某一概率 1-α(我们称其为置信水平Confidence Level))的前提下,t 统计量应该满足:
    P{t>tα2,Np1}<α P\{ |t| >t_{\frac{\alpha}{2}, N-p-1} \}< \alpha

    其中,tα/2,N-p-1tN-p-1 分布的 α/2 分位数,可以通过计算机软件或者查 t 分布分布表的方式得到。

    在判断原假设是否成立时,我们可以基于一个原则:小概率事件在一次试验中几乎不会发生。若 α 足够小,比如规定为常用的0.05,那么在 H0 正确的前提下t 统计量的绝对值大于 t0.025,N-p-1 的概率不超过5%。换言之,或者说 |t| > t0.025,N-p-1,我们就有足够的理由去认为原假设不正确,从而拒绝原假设。

    基于这种思想,我们可以构造出一个区域(称为拒绝域(Rejection Field)):
    (,tα2,Np1)  (tα2,Np1,+) (-\infin,-t_{\frac{\alpha}{2}, N-p-1}) \ \cup \ (t_{\frac{\alpha}{2}, N-p-1}, +\infin)

    显著性水平检验
    图1 t检验拒绝域构造示意图(阴影部分即为对应显著性水平下的拒绝域。图片来源:百度图片

    t 统计量落入这个区域时,我们都应该拒绝原假设H0,并认为 βi 不等于0,自变量 Xi 与因变量 Y 存在统计意义下显著的线性相关关系Statistically Significant Linear Correlation)。

    注1:拒绝域,顾名思义,即若t值落入这个区间就应该拒绝原假设H0
    注2:在应用时,我们可以记住一句口诀:t值(的绝对值)越大越拒绝

    2.4 浅谈p值

    此外,许多统计软件在回归的结果中会给出参数估计量所对应的p值(p-value)。p值的意义是:拒绝原假设所需要的最小置信度。什么意思呢?就是说,如果给出的p值小于你需要的置信度 α ,那么我们就应该拒绝原假设。也就是说,若:
    p-value<α \text{p-value}<\alpha

    我们应拒绝原假设H0,并认为 βi 不等于0,自变量 Xi 与因变量 Y 存在统计意义下显著的线性相关关系

    注1:与t值正好相反,在应用时,我们可以说:p值越小越拒绝
    注2:使用p值而不使用t值的好处是:p值不依赖于样本容量 N,不用查分布表,使用起来更加简单方便 。


    3. 回归方程显著性检验——F检验

    3.1 问题的提出

    在上一章的t检验中,我们对单一变量进行了显著性影响的评判。然而,这样做的一个缺点是:我们只判断了某一个解释变量对因变量单独的影响,而忽略了各解释变量对因变量的“共同作用”。若每一个变量单独与因变量不具有显著的线性关系,那么是不是模型本身就不能用了呢?未必。换句话说,只有模型中引入的解释变量 X1, …, Xp 均不能解释因变量Y,那么我们所建立的模型才能说是没有意义的。因此,我们需要对模型整体进行检验。与t检验类似,我们可以构造如下的假设检验问题:
    H0:β1=β2=...=βp=0H1: i{1,2,...,p},s.t. βi0 H_0: \beta_1 = \beta_2 = ... = \beta_p =0 \\ H_1: \exist \ i \in \{1,2,...,p\}, s.t. \ \beta_i\ne0

    β0 不能放入检验变量中,因为现在需要检验的是 XY 的线性关系,而不是Y 是否等于0这一问题。

    3.2 F检验统计量的构造

    我们应该如何构建检验统计量呢?让我们重新考察原模型:
    yi=β0+j=1pxijβj+ϵi y_i= \beta_0 + \sum_{j=1}^{p} x_{ij} \beta_j + \epsilon_i

    然而,若原假设H0成立,那么模型将会退化为
    y=β0+ϵi y = \beta_0 + \epsilon_i

    因此,假设回归方程是显著的(即H0不成立),那么由回归方程所拟合的因变量 y^i 应该有较大的方差,而其残差项所对应的方差应该较小,这是因为不同的解释变量 xi 应该对应不同的被解释变量 yi ;若回归方程不显著(H0成立),那么此时回归方程所拟合的变量 y^i 方差应该几乎为零,而其残差项 y^i - yi 则应具有较大的方差

    我们定义回归方程的可解释平方和Explained Sum of Square,ESS)为:
    ESS=i=1N(y^iy^ˉ)2=i=1N(y^iyˉ)2 ESS = \sum_{i=1} ^N(\hat{y}_i - \bar{\hat{y}} )^2 = \sum_{i=1} ^N(\hat{y}_i - \bar{y} )^2

    回归的残差平方和Residual Sum of Square,RSS)为:

    RSS=i=1N(y^iyi)2 RSS = \sum_{i=1} ^N(\hat{y}_i - y_i )^2

    根据上述的分析,如果可解释平方(ESS)和与残差平方和(RSS)之比越大,则说明 XY 整体的影响越显著;若原假设H0成立,则ESS与RSS的比值应该接近于0

    而容易证明,ESS与RSS分别服从卡方分布:
    ESSpχp2 \frac{ESS}{p} \thicksim \chi^2_{p} RSSNp1χNp12 \frac{RSS}{N-p-1} \thicksim \chi^2_{N-p-1}

    :这部分证明将会在未来补充在附录中。

    至此,我们可以构造F统计量:
    F=ESS/pRSS/Np1F(p,Np1) F = \frac{ESS/p}{RSS/N-p-1} \thicksim F(p, N-p-1)

    从F统计量的够造上来看,F统计量越大,说明 XY 存在的影响更大,原假设越可能被拒绝;而F统计量越接近零,说明 XY 存在的影响越小,原假设越可能成立。

    注1:从F统计量的构造上来看,F取值非负(平方和与平方和的比值);
    注2:在应用过程中,可以记住口诀:F越大越拒绝
    注3:有关F分布与F检验更多的相关知识,请有关参考文献[3] 我还是懒得找了

    3.3 拒绝域的构造

    t 统计量拒绝域构造方法类似,在给定置信水平 1 - α 的前提下,F 统计量应该满足:
    P{F>Fα(p,Np1)}<α P\{ F > F_{\alpha} (p, N-p-1) \}< \alpha

    其中,Fα(p, N - p - 1) 是 F(p, N - p - 1) 分布的 α 分位数,可以通过计算机软件或者查 F 分布分布表的方式得到。

    :与 t 统计量的双尾检验区间不同的是,F 检验为单尾检验。

    我们依然依照“小概率事件在一次试验中不会发生”的原则:在 H0 正确的前提下F 统计量大于 Fα(p, N - p - 1) 的概率不超过 α。换言之,F > Fα(p, N - p - 1),我们就有足够的理由去认为原假设不正确,从而拒绝原假设

    基于这种思想,我们可以构造拒绝域
    (Fα(p,Np1),+) (F_\alpha(p, N-p-1), +\infin)
    F分布拒绝域示意图
    图2 F检验拒绝域构造示意图(阴影部分即为对应显著性水平下的拒绝域。图片来源:百度图片

    F 统计量落入拒绝域内时,我们应该拒绝原假设H0,从而认为模型是显著的,或者说解释变量 X 与被解释变量 Y 之间存在显著的线性相关关系


    4. 总结

    在这篇文章中,我们分别研究了单变量的显著性检验模型的显著性检验

    (1)在单变量检验中,我们构造了假设检验问题:
    H0:βi=0H1:βi0 H_0: \beta_i=0 \\ H_1: \beta_i\ne0

    构造了检验统计量—— t 统计量:
    t=β^OLS,iSE(β^OLS,i)t(Np1) t= \frac {\hat\beta_{OLS,i}}{SE(\hat \beta_{OLS,i})}\thicksim t(N-p-1)

    并给出了拒绝域:
    (,tα2(Np1))  (tα2(Np1),+) (-\infin,-t_\frac{\alpha}{2}(N-p-1)) \ \cup \ (t_\frac{\alpha}{2}(N-p-1), +\infin)
    (2)在模型检验中,我们构造了假设检验问题:
    H0:β1=β2=...=βp=0H1: i{1,2,...,p},s.t. βi0 H_0: \beta_1 = \beta_2 = ... = \beta_p =0 \\ H_1: \exist \ i \in \{1,2,...,p\}, s.t. \ \beta_i\ne0

    构造了检验统计量—— F 统计量:
    F=ESS/pRSS/Np1F(p,Np1) F = \frac{ESS/p}{RSS/N-p-1} \thicksim F(p, N-p-1)

    并给出了拒绝域:
    (Fα(p,Np1),+) (F_\alpha(p, N-p-1), +\infin)
    至此,我们解决了如何验证各个解释变量对因变量是否存在显著的线性影响,以及模型中涉及到的解释变量总体是否对因变量是否存在显著的线性影响。


    参考文献

    [1] t分布收敛于标准正态分布的几种证明方法


    写在最后

    欢迎感兴趣的小伙伴来跟作者一起挑刺儿~ 包括但不限于语言上的、排版上的和内容上的不足和疏漏~ 一起进步呀!
    有任何问题,欢迎在本文下方留言,或者将问题发送至勘误邮箱: mikeysun_bugfix@163.com
    谢谢大家!

    展开全文
  • 为了有效地预测矿井突水,降低矿井生产中危险,基于多元线性回归的方法,研究了影响煤矿突水主要因素,包括断裂构造、底板含水层岩溶发育程度、水压、底板隔水层厚度等,得出了突水量与其影响诸因素之间线性回归...
  • 波士顿房地产业的多元...在讨论中,对线性回归模型的回归显著性以及拟合优度进行了检验,最后使用最优的多元线性回归模型对波士顿的房价进行预测。 关键字:多元线性回归,逐步回归,回归显著性,拟合优度,回归预测

    波士顿房地产业的多元线性回归分析


    摘要:本文基于波士顿房价的公开数据集,寻找影响波士顿房价的因素,统计数据包括城镇人均犯罪率、占地面积超过2.5万平方英尺的住宅用地比例、城镇非零售业务地区的比例以及查尔斯河虚拟变量等十三个因素。本文使用 R 语言,对各个影响因素的相关性进行了筛选分析,并采用逐步回归法得到了最优的多元线性回归模型。在讨论中,对线性回归模型的回归显著性以及拟合优度进行了检验,最后使用最优的多元线性回归模型对波士顿的房价进行预测。

    关键字:多元线性回归,逐步回归,回归显著性,拟合优度,回归预测


    引言

    影响房价的因素多种多样,涉及到包括经济、政治、文化、社会和生态的方方面面。而房价的预测,对于房产中介的定价,房地产企业的房展和人们的正常住房需求有着重要的作用。因此研究影响房价的因素,和房价之间的关系显得十分重要,建立有效的数学模型,根据各种因素对房价进行合理的预测。

    本文使用波士顿的房价公开数据集,其包括以1000美元计算的自有住房价格的中位数,以及可能会影响房价的十三个因素,包括:城镇人均犯罪率,占地面积超过2.5万平方英尺的住宅用地比例,城镇非零售业务地区的比例,查尔斯河虚拟变量 (= 1 如果土地在河边;否则是0),一氧化氮浓度,平均每居民房数,在1940年之前建成的所有者占用单位的比例,与五个波士顿就业中心的加权距离,辐射状公路的可达性指数,每10,000美元的全额物业税率,城镇师生比例,城镇黑人的比例,人口中地位较低人群的百分数等因素。多个因素和房价的相关性高低不同,分析各个因素和房价的相关性,寻找主要的影响因素,并建立多元回归模型是一个有效的分析方法。

    在现实问题中,变量与变量之间的关系大致可以分类两类:确定性关系和非确定关系。变量间的确定性关系是完全已知的,可用函数来描述;变量之间的非确定性关系称为相关关系,不能用某个确定函数来描述。回归分析就是这样一种应用广泛的研究变量与变量之间的相关关系的数理统计方法。回归分析的基本思想为:虽然变量间的相关关系无法用完全确定的函数关系来描述,但在平均意义下有一定的函数表达式。估计这种函数表达式是回归分析的主要任务,而根据观测数据建立的反映变量间相关关系的统计模型称为回归模型。

    回归模型中涉及的相关研究主要分为两类:一类是研究随机变量间的相关关系。另一类是研究随机变量与普通变量间的相关关系。在本文的研究中,除了房价之外,都是普通变量,所以属于后一种类型的回归模型。并且在本文的研究中,涉及到一个响应变量和多个解释变量,属于多元回归模型。并且本文使用线性的统计模型进行分析,因此问题可以进一步归属为多元线性回归模型。

    多元线性回归模型

    在多元线性回归模型中,问题的数学描述为:设随即变量 y 与 p(p≥2)个普通变量x1,x2,,xpx_1,x_2,……,x_p有关,且满足关系式:

    {y=β0+β1x1+β2x2++βpxp+εE(ε)=0,Var(ε)=σ2<+oo(1) \left\lbrace \begin{array}{c} y=β_0+β_1x_1+β_2x_2+……+β_px_p+ε \\ E(ε)=0, Var(ε)=σ^2<+oo \\ \end{array} \right. \tag{1}

    其中β0,β1,β2,,βp,σ2β_0,β_1,β_2,……,β_p,σ^2是与x1,x2,,xpx_1,x_2,……,x_p无关的未知参数,εε是不可观测的随机变量。

    在数据观测中,设有n组不全相同的样本观察值(xi1,xi2,,xip;yi)(i=1,2,,n)(x_{i1},x_{i2},……,x_{ip};y_i)(i=1,2,……,n),由式(1)得:

    {y=β0+β1xi1+β2xi2++βpxip+εiE(ε)=0,Var(ε)=σ2<+ooi=1,2,,n(2) \left\lbrace \begin{array}{c} y=β_0+β_1x_{i1}+β_2x_{i2}+……+β_px_{ip}+ε_i \\ E(ε)=0, Var(ε)=σ^2<+oo \\ \end{array} \right. i=1,2,……,n \tag{2}

    其中ε1,ε2,ε3,,εnε_1,ε_2,ε_3,……,ε_n相互独立。为了方便,使用矩阵表达式记为:

    Y=(y1y2yn),X=(1x11x1p1x21x2p1xn1xnn),β=(β1β2βn),ε=(ε1ε2εn)(3) Y= \left( \begin{matrix} y_1 \\ y_2 \\ \vdots \\ y_n \\ \end{matrix} \right) , X= \left( \begin{matrix} 1 & x_{11} & \cdots & x_{1p} \\ 1 & x_{21} & \cdots & x_{2p} \\ \vdots & \vdots & \ddots & \vdots \\ 1 & x_{n1} & \cdots & x_{nn} \\ \end{matrix} \right) , β= \left( \begin{matrix} β_1 \\ β_2 \\ \vdots \\ β_n \\ \end{matrix} \right) , ε= \left( \begin{matrix} ε_1 \\ ε_2 \\ \vdots \\ ε_n \\ \end{matrix} \right) \tag{3}

    则式(2)可表示成矩阵形式:

    {Y=Xβ+εE(ε)=0,Var(ε)=σ2In(4) \left\lbrace \begin{array}{c} Y=Xβ+ε \\ E(ε)=0, Var(ε)=σ^2I_n \\ \end{array} \right. \tag{4}

    其中InI_n为 n 阶单位矩阵,Y 为随机变量的观测向量,β 为未知参数向量,X 为设计矩阵,ε 为 n 维随机误差向量。为了对参数做区间估计与假设检验,需要给出 Y 的确切分布,即给出 ε 的分布,常常假定εN(0,σ2)ε ~ N(0, σ^2),则式(4)为:

    {Y=Xβ+εεN(0,σ2In)(5) \left\lbrace \begin{array}{c} Y=Xβ+ε \\ ε ~ N(0, σ^2I_n) \\ \end{array} \right. \tag{5}

    使用最小二乘法估计回归系数β,就是最小化误差平方和:

    Q(β0,β1,β2,,βp)=i=1n(yiβ0β1xi1β2xi2βpxip)2(6)Q(β_0,β_1,β_2,……,β_p)=\sum_{i=1}^n(y_i-β_0-β_1x_{i1}-β_2x_{i2}-……-β_px_{ip})^2 \tag{6}

    其误差平方和Q(β0,β1,β2,,βp)Q(β_0,β_1,β_2,……,β_p)的矩阵表示为:

    Q(β)=(YXβ)(YXβ)(7)Q(β)=(Y-Xβ)^{'}(Y-Xβ) \tag{7}

    推导得:

    Q(β)β=2XY+2XXβ(8)\frac{\partial Q(β)}{\partial β} = -2X^{'}Y + 2X^{'}Xβ \tag{8}

    Q(β)β=0\frac{\partial Q(β)}{\partial β}=0,可得:

    β^=(XX)1XY(9)\hat β = (X^{'}X)^{-1}X^{'}Y \tag{9}

    则可得 p 元经验线性回归方程为:

    y^=β^0+β^1x1+β^2x2++β^pxp(10)\hat y=\hat β_0+\hat β_1x_1+\hat β_2x_2+……+\hat β_px_p \tag{10}

    回归的显著性检验

    在进行数据分析的时候,需要一个数量指标来衡量回归方程对样本点(x,y)本身的变化趋势描述好坏的程度,即需要一个数量指标来度量拟合好坏的程度。

    数据的总波动可用离差平方和来描述:

    Lyy=i=1n(yiy)2(11)L_{yy}=\sum_{i=1}^n(y_i-\overline y)^2 \tag{11}

    其可以分解为两部分:

    Lyy=Q+U,Q=i=1n(yiy^i)2,Q=i=1n(y^iy)2(12)L_{yy} = Q+U, Q=\sum_{i=1}^n(y_i-\hat y_i)^2, Q=\sum_{i=1}^n(\hat y_i-\overline y)^2 \tag{12}

    平方和的分解公式,式(12)表明,y1,y2,,yny_1,y_2,……,y_n的分散程度,可以分解为两部分,一部分是由于x对y的线性关系引起的 y 的分散性,即回归平方和 U;另一部分是剩余部分引起的分散性,即残差平方和 Q,由随机误差引起的分散性包含在 Q 中。

    在总和LyyL_{yy}中,U 所占的比重越大,说明随机误差所占的比重越小,回归的效果就越显著,因此可以使用如下公式来度量线性回归效果的显著性:

    R2=ULyy=1QLyy(13)R^2=\frac{U}{L_{yy}}=1-\frac{Q}{L_{yy}} \tag{13}

    其中R2R^2描述了回归平方和 U 占离差平方和LyyL_{yy}的比重,称R2R^2为决定系数,也称为拟合优度,表示用直线来拟合数据的好坏程度。而其开根号后的 r 称为相关系数,可以描述两个变量 y 与 x 之间的线性相关的密切程度。

    由于LyyU0L_{yy}≥U≥0,故1R201≥R^2≥0,即 |r| 越接近于 1,y 与 x 之间的线性相关程度就越大,即线性趋势越明显。特别地,当 |r| = 1 时,所有的点都在回归直线上;当 |r| = 0 时,回归直线平行于 y 轴,说明 y 与 x 线性无关。

    综上所述,|r| 越小,则线性回归的效果越差,y 与 x 之间的线性相关性就不显著;而 |r| 越大,线性回归的效果越好,y 与 x 之间的线性相关性就越显著。因此,在本文中,使用 |r| 对线性相关关系是否显著进行检验。

    前面的线性回归效果的显著性检验可以转化为如下的假设检验问题:

    H0:b=0,H1:b0(14)H_0: b = 0, H_1: b ≠ 0 \tag{14}

    这其实也是检验响应变量 y 是否显著依赖于解释变量 x 的假设检验问题。但对于多元线性回归,回归效果的显著性检验问题与回归系数的显著性检验问题是不同的。

    回归效果的显著性检验主要是检验响应变量对所有解释变量的线性依赖性是否显著,而回归系数的显著性检验主要是检验响应变量对某个解释变量或某几个解释变量的线性依赖性是否显著。

    在本文中,对多元线性回归的回归效果的显著性检验使用 F 检验法;对多元线性回归的回归系数的显著性检验使用 t 检验法。

    最优回归方程的选择

    线性回归方程的最优性包括在两个方面:

    (1)该模型中包含所有对因变量 y 有显著影响的自变量。

    (2)该模型中所包含的自变量个数尽可能少,不含有无意义的变量,而且还应该是这类方程中R2R^2达到最大者。

    选择最优回归方程的方法有四种:全部比较法、向后法(只出不进法)、向前法(只进不出法)、逐步回归法(有进有出法)。在本文中,使用逐步回归法进行最优方程的选择。

    逐步回归法的基本思想为:将变量一个个引入,引入的条件是该变量的偏 F 检验是显著的。同时,每引入一个新变量后又要对老变量逐个检验,将变得不显著的变量从回归模型中剔除。即逐步回归法实际上是对向前法和向后法的一种结合。重复上述步骤,直到所有模型外的变量都不能引入,模型内的变量都不能被剔除,即表示是找到了最优的回归方程。


    解决问题的方法和计算结果

    在波士顿房价的公开数据集中,共包含506条观测数据。在本文中,选取前500条观测数据建立多元线性回归模型,并使用后6条数据进行多元线性回归模型的预测和分析。

    在波士顿房价的公开数据集,各个因素的含义如下表所示:

    序号 因素 含义
    1 CRIM 镇人均犯罪率
    2 ZN 占地面积超过2.5万平方英尺的住宅用地比例
    3 INDUS 城镇非零售业务地区的比例
    4 CHAS 查尔斯河虚拟变量 (= 1 如果土地在河边;否则是0)
    5 NOX 一氧化氮浓度
    6 RM 平均每居民房数
    7 AGE 在1940年之前建成的所有者占用单位的比例
    8 DIS 与五个波士顿就业中心的加权距离
    9 RAD 辐射状公路的可达性指数
    10 TAX 每10,000美元的全额物业税率
    11 PTRATIO 城镇师生比例
    12 B 城镇黑人的比例
    13 LSTAT 人口中地位较低人群的百分数
    14 MEDV 自住房屋的房价中位数,单位1000美元

    相关性分析

    首先读取 csv 格式的波士顿房价的公开数据集,其代码为:

    > Boston_Housing_Data=read.csv("/Users/limengfan/Course_2020_2/数理统计/大作业:回归/Boston_Housing.csv")
    > 
    

    上述代码将 csv 格式的数据集读取到了 R 语言中,存储格式为 R 语言的 data.frame 数据结构,显示前 3 行数据如下:

    > Boston_Housing_Data[1:3,]
         CRIM ZN INDUS CHAS   NOX    RM  AGE    DIS RAD TAX PTRATIO      B LSTAT
    1 0.00632 18  2.31    0 0.538 6.575 65.2 4.0900   1 296    15.3 396.90  4.98
    2 0.02731  0  7.07    0 0.469 6.421 78.9 4.9671   2 242    17.8 396.90  9.14
    3 0.02729  0  7.07    0 0.469 7.185 61.1 4.9671   2 242    17.8 392.83  4.03
      MEDV
    1 24.0
    2 21.6
    3 34.7
    > 
    

    先针对各个影响因素,计算影响因素和房价中位数的相关系数,代码如下:

    > cor(Boston_Housing_Data$CRIM, Boston_Housing_Data$MEDV)
    [1] -0.3883046
    > cor(Boston_Housing_Data$ZN, Boston_Housing_Data$MEDV)
    [1] 0.3604453
    > cor(Boston_Housing_Data$INDUS, Boston_Housing_Data$MEDV)
    [1] -0.4837252
    > cor(Boston_Housing_Data$CHAS, Boston_Housing_Data$MEDV)
    [1] 0.1752602
    > cor(Boston_Housing_Data$NOX, Boston_Housing_Data$MEDV)
    [1] -0.4273208
    > cor(Boston_Housing_Data$RM, Boston_Housing_Data$MEDV)
    [1] 0.6953599
    > cor(Boston_Housing_Data$AGE, Boston_Housing_Data$MEDV)
    [1] -0.3769546
    > cor(Boston_Housing_Data$DIS, Boston_Housing_Data$MEDV)
    [1] 0.2499287
    > cor(Boston_Housing_Data$RAD, Boston_Housing_Data$MEDV)
    [1] -0.3816262
    > cor(Boston_Housing_Data$TAX, Boston_Housing_Data$MEDV)
    [1] -0.4685359
    > cor(Boston_Housing_Data$PTRATIO, Boston_Housing_Data$MEDV)
    [1] -0.5077867
    > cor(Boston_Housing_Data$B, Boston_Housing_Data$MEDV)
    [1] 0.3334608
    > cor(Boston_Housing_Data$LSTAT, Boston_Housing_Data$MEDV)
    [1] -0.7376627
    > 
    

    对各个单独的影响因素和房价,作散点图,代码如下:

    > par(mfrow=c(4,4))
    > plot(
    +   x=Boston_Housing_Data$CRIM, xlab="CRIM", 
    +   y=Boston_Housing_Data$MEDV, ylab="MEDV",
    +   pch='.'
    + )
    > plot(
    +   x=Boston_Housing_Data$ZN, xlab="ZN", 
    +   y=Boston_Housing_Data$MEDV, ylab="MEDV",
    +   pch='.'
    + )
    > plot(
    +   x=Boston_Housing_Data$INDUS, xlab="INDUS", 
    +   y=Boston_Housing_Data$MEDV, ylab="MEDV",
    +   pch='.'
    + )
    > plot(
    +   x=Boston_Housing_Data$CHAS, xlab="CHAS", 
    +   y=Boston_Housing_Data$MEDV, ylab="MEDV",
    +   pch='.'
    + )
    > plot(
    +   x=Boston_Housing_Data$NOX, xlab="NOX", 
    +   y=Boston_Housing_Data$MEDV, ylab="MEDV",
    +   pch='.'
    + )
    > plot(
    +   x=Boston_Housing_Data$RM, xlab="RM", 
    +   y=Boston_Housing_Data$MEDV, ylab="MEDV",
    +   pch='.'
    + )
    > plot(
    +   x=Boston_Housing_Data$AGE, xlab="AGE", 
    +   y=Boston_Housing_Data$MEDV, ylab="MEDV",
    +   pch='.'
    + )
    > plot(
    +   x=Boston_Housing_Data$DIS, xlab="DIS", 
    +   y=Boston_Housing_Data$MEDV, ylab="MEDV",
    +   pch='.'
    + )
    > plot(
    +   x=Boston_Housing_Data$RAD, xlab="RAD", 
    +   y=Boston_Housing_Data$MEDV, ylab="MEDV",
    +   pch='.'
    + )
    > plot(
    +   x=Boston_Housing_Data$TAX, xlab="TAX", 
    +   y=Boston_Housing_Data$MEDV, ylab="MEDV",
    +   pch='.'
    + )
    > plot(
    +   x=Boston_Housing_Data$PTRATIO, xlab="PTRATIO", 
    +   y=Boston_Housing_Data$MEDV, ylab="MEDV",
    +   pch='.'
    + )
    > plot(
    +   x=Boston_Housing_Data$B, xlab="B", 
    +   y=Boston_Housing_Data$MEDV, ylab="MEDV",
    +   pch='.'
    + )
    > plot(
    +   x=Boston_Housing_Data$LSTAT, xlab="LSTAT", 
    +   y=Boston_Housing_Data$MEDV, ylab="MEDV",
    +   pch='.'
    + )
    > 
    

    散点图如下图所示:

    在这里插入图片描述

    可以看到,针对相关系数的符号,部分影响因素的与房价的相关关系表现为正相关,部分表现为负相关。针对相关系数的绝对值大小,部分影响因素对房价的影响显著,部分影响不显著。

    多元线性回归

    针对所有的影响因素,建立多元线性回归方程:

    MEDV=Intercept+k1CRIM+k2ZN+k3INDUS+k4CHAS+k5NOX+k6RM+k7AGE+k8DIS+k9RAD+k10TAX+k11PTRATIO+k12B+k13LSTAT(15)MEDV = Intercept+k_1·CRIM+k_2·ZN+k_3·INDUS+k_4·CHAS+k_5·NOX+k_6·RM \\ +k_7·AGE+k_8·DIS+k_9·RAD+k_10·TAX+k_11·PTRATIO+k_12·B+k_13·LSTAT \tag{15}

    下面进行线性回归方程模型的建立,首先取前500条数据建立多元线性回归模型,并输出所求得的模型的信息:

    > tlm <- lm(MEDV~CRIM+ZN+INDUS+CHAS+NOX+RM+AGE+DIS+RAD+TAX+PTRATIO+B+LSTAT, data=Boston_Housing_Data[1:500,])
    > tlm
    
    Call:
    lm(formula = MEDV ~ CRIM + ZN + INDUS + CHAS + NOX + RM + AGE + 
        DIS + RAD + TAX + PTRATIO + B + LSTAT, data = Boston_Housing_Data[1:500, 
        ])
    
    Coefficients:
    (Intercept)         CRIM           ZN        INDUS         CHAS          NOX  
      35.406834    -0.105856     0.048752     0.018293     2.611199   -17.006242  
             RM          AGE          DIS          RAD          TAX      PTRATIO  
       3.797362     0.002020    -1.514495     0.290883    -0.012565    -0.885637  
              B        LSTAT  
       0.009296    -0.538782  
    
    > 
    

    可得,使用所有影响因素建立的初始多元线性回归方程为:

    MEDV=35.406834+(0.105856CRIM)+(0.048752ZN)+(0.018293INDUS)+(2.611199CHAS)+(17.006242NOX)+(3.797362RM)+(0.002020AGE)+(1.514495DIS)+(0.290883RAD)+(0.012565TAX)+(0.885637PTRATIO)+(0.009296B)+(0.538782LSTAT)(16)MEDV = 35.406834+(-0.105856·CRIM)+(0.048752·ZN)+(0.018293·INDUS) \\ +(2.611199·CHAS)+(-17.006242·NOX)+(3.797362·RM)+(0.002020·AGE) \\ +(-1.514495·DIS)+(0.290883·RAD)+(-0.012565·TAX)+(-0.885637·PTRATIO) \\ +(0.009296·B)+(-0.538782·LSTAT) \tag{16}

    逐步回归

    由上文的相关性分析可得,不同的影响因素,其对房价的影响显著性不同,我们应该选择显著性较高的影响因素。在自变量个数尽可能少的同时,使得R2R^2达到最大。

    由此使用逐步回归法求得最优的多元线性回归模型,并输出所求得的模型的信息:

    > tstep <- step(tlm)
    Start:  AIC=1569.38
    MEDV ~ CRIM + ZN + INDUS + CHAS + NOX + RM + AGE + DIS + RAD + 
        TAX + PTRATIO + B + LSTAT
    
              Df Sum of Sq   RSS    AIC
    - AGE      1      0.52 10910 1567.4
    - INDUS    1      1.99 10911 1567.5
    <none>                 10909 1569.4
    - CHAS     1    206.51 11116 1576.8
    - CRIM     1    233.27 11142 1578.0
    - TAX      1    250.67 11160 1578.7
    - B        1    269.66 11179 1579.6
    - ZN       1    282.35 11192 1580.2
    - RAD      1    428.01 11337 1586.6
    - NOX      1    442.50 11352 1587.3
    - PTRATIO  1    976.57 11886 1610.2
    - DIS      1   1287.34 12196 1623.2
    - RM       1   1851.73 12761 1645.8
    - LSTAT    1   2506.89 13416 1670.8
    
    Step:  AIC=1567.4
    MEDV ~ CRIM + ZN + INDUS + CHAS + NOX + RM + DIS + RAD + TAX + 
        PTRATIO + B + LSTAT
    
              Df Sum of Sq   RSS    AIC
    - INDUS    1      1.99 10912 1565.5
    <none>                 10910 1567.4
    - CHAS     1    208.16 11118 1574.8
    - CRIM     1    233.22 11143 1576.0
    - TAX      1    250.19 11160 1576.7
    - B        1    272.31 11182 1577.7
    - ZN       1    283.63 11193 1578.2
    - RAD      1    428.09 11338 1584.7
    - NOX      1    466.45 11376 1586.3
    - PTRATIO  1    978.13 11888 1608.3
    - DIS      1   1420.14 12330 1626.6
    - RM       1   1947.00 12857 1647.5
    - LSTAT    1   2813.68 13723 1680.1
    
    Step:  AIC=1565.49
    MEDV ~ CRIM + ZN + CHAS + NOX + RM + DIS + RAD + TAX + PTRATIO + 
        B + LSTAT
    
              Df Sum of Sq   RSS    AIC
    <none>                 10912 1565.5
    - CHAS     1    214.62 11126 1573.2
    - CRIM     1    235.20 11147 1574.2
    - B        1    271.08 11183 1575.8
    - ZN       1    281.80 11194 1576.2
    - TAX      1    286.11 11198 1576.4
    - RAD      1    446.76 11358 1583.6
    - NOX      1    486.15 11398 1585.3
    - PTRATIO  1    982.85 11895 1606.6
    - DIS      1   1518.18 12430 1628.6
    - RM       1   1952.66 12864 1645.8
    - LSTAT    1   2820.20 13732 1678.4
    > 
    > tstep
    
    Call:
    lm(formula = MEDV ~ CRIM + ZN + CHAS + NOX + RM + DIS + RAD + 
        TAX + PTRATIO + B + LSTAT, data = Boston_Housing_Data[1:500, 
        ])
    
    Coefficients:
    (Intercept)         CRIM           ZN         CHAS          NOX           RM  
      35.259036    -0.106217     0.048060     2.644310   -16.553028     3.799019  
            DIS          RAD          TAX      PTRATIO            B        LSTAT  
      -1.535918     0.284626    -0.012056    -0.879144     0.009297    -0.534946  
    
    > 
    

    可以看到,在逐步回归法中,进行了多次的迭代,最终确定的最优多元线性回归方程为:

    MEDV=Intercept+k1CRIM+k2ZN+k4CHAS+k5NOX+k6RM+k8DIS+k9RAD+k10TAX+k11PTRATIO+k12B+k13LSTAT(17)MEDV = Intercept+k_1·CRIM+k_2·ZN+k_4·CHAS+k_5·NOX+k_6·RM \\ +k_8·DIS+k_9·RAD+k_10·TAX+k_11·PTRATIO+k_12·B+k_13·LSTAT \tag{17}

    其选用了显著性水平较高的11个影响因素,同时保持了R2R^2达到最大:

    MEDV=35.259036+(0.106217CRIM)+(0.048060ZN)+(2.644310CHAS)+(16.553028NOX)+(3.799019RM)+(1.535918DIS)+(0.284626RAD)+(0.012056TAX)+(0.879144PTRATIO)+(0.009297B)+(0.534946LSTAT)(18)MEDV = 35.259036+(-0.106217·CRIM)+(0.048060·ZN)+(2.644310·CHAS) \\ +(-16.553028·NOX)+(3.799019·RM)+(-1.535918·DIS)+(0.284626·RAD) \\ +(-0.012056·TAX)+(-0.879144·PTRATIO)+(0.009297·B)+(-0.534946·LSTAT) \tag{18}

    模型预测

    为了测试多元线性回归模型的正确性,使用波士顿房价的公开数据集中未用来进行模型建立的后六条观测数据进行模型预测分析。

    数据 第一组 第二组 第三组 第四组 第五组 第六组
    CRIM 0.22438 0.06263 0.04527 0.06076 0.10959 0.04741
    ZN 0 0 0 0 0 0
    INDUS 9.69 11.93 11.93 11.93 11.93 11.93
    CHAS 0 0 0 0 0 0
    NOX 0.585 0.573 0.573 0.573 0.573 0.573
    RM 6.027 6.593 6.12 6.976 6.794 6.03
    AGE 79.7 69.1 76.7 91 89.3 80.8
    DIS 2.4982 2.4786 2.2875 2.1675 2.3889 2.505
    RAD 6 1 1 1 1 1
    TAX 391 273 273 273 273 273
    PTRATIO 19.2 21 21 21 21 21
    B 396.9 391.99 396.9 396.9 393.45 396.9
    LSTAT 14.33 9.67 9.08 5.64 6.48 7.88
    MEDV(真值) 16.8 22.4 20.6 23.9 22 11.9
    最初模型:式(16) 20.67286194 23.99180352 22.86578569 28.17872333 26.65904323 22.84921432
    最优模型:式(18) 20.74983713 24.01022171 22.86990999 28.14474935 26.62665978 22.83564401

    根据模型预测的值可得,最初模型和最优模型的差距并不大,且最优模型的参数更少,计算更简单,而且其值也更接近真值。

    但是两个模型和真值都有一定的误差,说明使用此多元线性回归模型完整的建模此问题还有一定的差距。

    在原始的 Excel 表中使用公式计算最初模型和最优模型的预测值,其公式如下:

    最初模型:式(16)
    =35.406834+(-0.105856*A2)+(0.048752*B2)+(0.018293*C2)+(2.611199*D2)
      +(-17.006242*E2)+(3.797362*F2)+(0.00202*G2)+(-1.514495*H2)+(0.290883*I2)
      +(-0.012565*J2)+(-0.885637*K2)+(0.009296*L2)+(-0.538782*M2)
    
    最优模型:式(18)
    = 35.259036+(-0.106217*A2)+(0.04806*B2)+(2.64431*D2)+(-16.553028*E2)
      +(3.799019*F2)+(-1.535918*H2)+(0.284626*I2)+(-0.012056*J2)+(-0.879144*K2)
      +(0.009297*L2)+(-0.534946*M2)
    

    针对真值,最初模型的预测值和最优模型的预测值绘制折线图如下:

    在这里插入图片描述

    从上图可以得出,两个模型都在一定程度上起到了很好的预测效果,其中最优模型的方差较小,和真值更为接近。


    讨论

    针对逐步回归法求得的最优模型,对其回归显著性以及拟合优度进行检验。使用summary()函数获取逐步回归的具体信息,代码及输入如下所示:

    > summary(tstep)
    
    Call:
    lm(formula = MEDV ~ CRIM + ZN + CHAS + NOX + RM + DIS + RAD + 
        TAX + PTRATIO + B + LSTAT, data = Boston_Housing_Data[1:500, 
        ])
    
    Residuals:
         Min       1Q   Median       3Q      Max 
    -15.6886  -2.6695  -0.5701   1.8036  26.0814 
    
    Coefficients:
                  Estimate Std. Error t value Pr(>|t|)    
    (Intercept)  35.259036   5.097433   6.917 1.45e-11 ***
    CRIM         -0.106217   0.032750  -3.243 0.001263 ** 
    ZN            0.048060   0.013538   3.550 0.000422 ***
    CHAS          2.644310   0.853525   3.098 0.002060 ** 
    NOX         -16.553028   3.549999  -4.663 4.03e-06 ***
    RM            3.799019   0.406532   9.345  < 2e-16 ***
    DIS          -1.535918   0.186399  -8.240 1.60e-15 ***
    RAD           0.284626   0.063676   4.470 9.74e-06 ***
    TAX          -0.012056   0.003370  -3.577 0.000382 ***
    PTRATIO      -0.879144   0.132603  -6.630 8.92e-11 ***
    B             0.009297   0.002670   3.482 0.000543 ***
    LSTAT        -0.534946   0.047633 -11.231  < 2e-16 ***
    ---
    Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
    
    Residual standard error: 4.729 on 488 degrees of freedom
    Multiple R-squared:  0.7436,	Adjusted R-squared:  0.7379 
    F-statistic: 128.7 on 11 and 488 DF,  p-value: < 2.2e-16
    
    > 
    

    由上面的数据分析得到,逐步回归法求得的最优模型,其最终的公式为:MEDV ~ CRIM + ZN + CHAS + NOX + RM + DIS + RAD + TAX + PTRATIO + B + LSTAT,即只使用了11个影响因素,并且各个影响因素的显著性都很高,通过对每个影响因素进行 t-检验获取的 t 值可以得到,公式中使用的各个影响因素的显著性水平都在0.005以上。

    并且分析可得,残差的中位数为-0.5701,即最优线性回归模型的残差在可接受的范围之内。其中相关系数为R2=0.7436R^2=0.7436,表示 y 与 x 的线性相关性较强,且对回归的整体效果进行 F-检验,可得 p 值为 <2.2e-16,表示最优线性回归模型的显著性水平很高,最终回归的整体效果较为理想。


    参考文献

    [1] 波士顿房价数据集官网. https://www.cs.toronto.edu/~delve/data/boston/bostonDetail.html
    [2] 波士顿房价数据集. http://lib.stat.cmu.edu/datasets/boston
    [3] 孙海燕,周梦,李卫国,冯伟. 数理统计[M]. 北京:北京航空航天大学出版社, 2016.
    [4] 方小敏,齐德胜,张文霖,冯伟. 谁说菜鸟不会数据分析(R 语言篇)[M]. 电子工 业出版社, 2020.

    展开全文
  • 其9个相关影响变量数据(包括风力,机动车保有量,火电厂、炼钢厂、炼焦厂平均各排口每小时各主要污染物的排放量),在MATALB中采用多元线性回归方法建立了模型、参数估计和模型检验,并在已得模型的基础上剔除不...
  • 4、spss做多元线性回归

    千次阅读 2015-04-15 15:19:34
    回归一直是个很重要主题。因为在数据分析领域里边,模型重要也是主要...本文主要讨论多元线性回归包括一般多元回归,含有虚拟变量多元回归,以及一点广义差分知识)。请大家不要觉得本人偷奸耍滑,居然只有

    回归一直是个很重要的主题。因为在数据分析的领域里边,模型重要的也是主要的作用包括两个方面,一是发现,一是预测。而很多时候我们就要通过回归来进行预测。关于回归的知识点也许不一定比参数检验,非参数检验多,但是复杂度却绝对在其上。回归主要包括线性回归,非线性回归以及分类回归。本文主要讨论多元线性回归(包括一般多元回归,含有虚拟变量的多元回归,以及一点广义差分的知识)。请大家不要觉得本人偷奸耍滑,居然只有一个主题,两个半知识点。相信我,内容会很充实的。

    对于线性回归的定义主要是这样的:线性回归,是基于最小二乘法原理产生古典统计假设下的最优线性无偏估计。是研究一个或多个自变量与一个因变量之间是否存在某种线性关系的统计学方法。

    这个什么叫线性回归,什么叫最小二乘法,在在高中数学课本里边就有涉及。我就不重复了嘿嘿。本质上讲一元线性回归是多元线性回归的一个特例,因此我们就直接讨论多元线性回归了哈。

    为了便于叙述,我们先举个例子,假设我们想研究年龄,体重,身高,和血压的线性回归关系。

    打开菜单分析——回归——线性,打开主对话框。很容易可以知道在本例中因变量选择血压,自变量选择年龄,身高,体重。然后注意,在因变量那个框框下边还有一个写着方法的下拉的单选菜单。这个方法指的是建立多元线性方程的方法,也就是自变量进入分析的方法。一共包括五种,进入,逐步,删除,向后,向前。进入是最简单的一种,就是强迫指定选中的自变量都进入方程。其余四个方法比较复杂,系统会依照不同的规则自动的帮助你剔除不合格的自变量,以此保证方程的可靠性。

    下边的选择变量框框是用来指定分析个案的选择规则,这个一般大家是所有的个案都利用,所以不用管它。再下边的个案标签变量,是用来在图形中标注值得,也不是重点。最下边的WLS权重,是在加权最小二乘法里边使用的,这里不管它。

    介绍完主面板以后我们来看统计量选项卡。这张选项卡比较小,一般勾选的主要有估计,模型拟合度,共线性诊断,DW检验统计量。其中前两个是常规选项,后两个是用来判断共线性的。(由于方程中有两个以上的自变量,如果这些自变量之间存在相关关系,就可能导致模型的失败。可能会出现本应该与因变量正相关的变量结果为负相关啊之类的问题。这时候就要看是不是存在多重共线性。)

    继续,单击绘制。勾选直方图,正太概率图。

    继续,单击保存。勾选预测值的未标准化,残差的未标准化,预测区间的均值,单值,最下边的包含协方差矩阵。

    继续。单击选项。勾选使用F的概率,在等式中包含常量。

    继续,确定。

    结果的解释也说不上复杂。首先看模型汇总表的R方,这个值介于0和1之间,表示你的方程能解释你的模型的百分之多少,所以越接近1越好啦。然后要看方差分析表。第一行的回归对应的最后边的p值会告诉你这个方程是不是可信(注意,这个是整个方程的基础,这个p值不合格的话下边的数据都是无效的)。小于0.05认为就是可信的哈。

    然后再看下边的系数表,这个表里的p值会告诉你每个自变量在这个方程里是否可信。小于0.05认为可信哈。在最前边的B下边那一列会告诉你每个自变量在方程里的系数(非标准化系数的意思是用你原来的数据算出来的系数,标准系数的意思是你的数据标准化以后算出的系数。你写方程时肯定看非标准化的哈)。图片的话你的P-P图上的每个空心圆都要尽量穿在那个线上边,圆心越靠近那个线越好。

    到这里一般多元线性回归的基本知识就结束了。操作不是很难,但是遗憾的是,在实际生活中,关于多元线性回归,还有许多问题。最常见的问题是这样的。你为了保险,选了十几个变量在模型里边。这样的话,可能你的方程确实解释了很大一部分模型,但是这除了使方程过分复杂以外,还会引发严重的多重共线性。所以不要选很多的变量在你的方程里边。或者你在模型里选了五六个变量,其中一部分p值小于0.05,另一部分大于。而且最要命的是你觉得你的自变量好像都明显和你的因变量相关。这个问题在于,有可能你的一部分自变量和你的因变量的相关性非常强,太强了,所以你的其他变量看上去就没有那么相关了。这时候你需要试试改变你的进入方法,改成逐步或者其他什么的。也许可以解决问题。

    但是不是所有的问题都可以用调整变量,或者改变变量进入方法可以解决的。有一些问题在于你的自变量的类型。有许多变量都是分类型的,比如你的性别,你是否抽烟,你的健康级别(不健康,一般,健康,非常健康)之类的。通常来讲,录入数据时会使用数字来表示特定含义。比如1是男,2是女,比如1,2,3,4来代表健康级别等等。一般情况下作分析是没有问题的,但是在回归里边也许不那么适合。

    尤其是对于无序资料来说。

    举个例子。季节。我们用1,2,3,4来表示四季。假设我们把这个变量当做一般变量写到方程里边,那么我们就有这么个方程Y=X+X1*a,其中X1是四季变量。那么春季就是X+a,夏季就是X+2a,秋季就是X+3a,冬季就是X+4a,考虑一下,四季之间本来是没有等级关系的,但是这个方程里边显示的冬季远远会比夏季的值大,那么真实情况是这样吗?很可能不是。因此就会造成方程的偏差。为了解决这个问题。我们引入虚拟变量的概念。

    虚拟变量的设置方法是这样的,如果我们有d个水平,那么我们就设置d-1个虚拟变量,选出一个变量来做参照,虚拟变量全为0时为这个参照变量。虚拟变量有一个为1时代表某一个水平。还拿季节举例子,我们有四个季节,那么我们就设置三个虚拟变量,我们使000代表春季,100代表夏,010代表秋,001代表东。那么春季就是参照变量。(实际上设置四个虚拟变量也是可以的,但是结果一摸一样)

    所以现在我们的一个代表四季的变量就变成了三个虚拟变量。我们的方程就变成了Y=X+X1*a+X2*b+X3*c。那么X就是春季的值X+X1就是夏季的值X+X2就是秋季的值X+X3就是冬季的值,是不是更准确了?

    在张文彤老师的spss高级教程里边讲解到了虚拟变量的用法。但是由于是高级教程,因此并没有提到如何设置虚拟变量。网上很多博客里边也没有提到这个问题。但是为了完整性,我还是想写一下吧(毕竟这个系列的文章没有数据转换这个内容)。在线性回归里边,你需要自己设定虚拟变量。打开转换——重新编码为不同变量,把季节变量(或者行业,地区,或者别的什么)选到输入变量——输出变量里边,名称里输入你的新名称,标签要点一下,点一下更改。单击下边的旧值和新值,旧值里边输入1,新值输入1,点添加。然后旧值输入2,新值输入0,点添加,以此类推。设置好一个虚拟变量以后,设置第二个的时候,记得先把第一个从右边的窗口传回左边的窗口。有点麻烦,但是在所难免嘛。

    然后注意做回归的时候,在主面板里边自变量的第一张仅选择你的虚拟变量,方法选进入。你要确保你的虚拟变量都要一块进到方程里嘛。然后点下一张,选择其他的数值变量,方法可以选逐步啊什么的。看结果的时候前边已经讲过了,虚拟变量改变的就是截距嘛。其他的结果都和一般的多元线性回归结果一样的。要注意的是就算有的虚拟变量p值合格,有的不合格,你选择变量的时候也必须把一个变量设置出的所有的虚拟变量选到一块,要么都要,要么都不要。

    虚拟变量主要就是这样了。但是除了变量类型导致的问题以外,还有一个很严重的问题就是多重共线性。虽然我们讲,我们要少选几个变量,我们要降维,我们要想办法消减多重共线性。但是不可避免的,我们总是会碰到变量具有多重共线性的情况。

    判断多重共线性,主要是通过共线性诊断里的VIF值和DW检验。VIF介于1到5时,就认为没有多重共线性。大于10时,认为存在严重多重共线性。在这里我们不讨论VIF大于10的情况(不然我下篇文章讨论什么?),我们要讨论的是另一种非常特殊的情况,VIF值合格,但是DW检验没有通过。这时候怎么办?

    当然你可以假装没有看见DW检验,你继续做分析的话。很可能别人也看不出来,但是如果你的老师就是想考考你的广义差分法呢?

    所以我们还是讨论一下广义差分法的操作办法。

    首先你要保存你的变量的残差,在时间序列里边做滞后一期的残差(就在主面板里),然后把残差和滞后一期的残差做回归,记下它的斜率,在做滞后一期的自变量,因变量。建立新变量=原变量-斜率*滞后一期的变量(所有的自变量,因变量都要算新变量),然后再做回归。

    这上边就是一次完整的广义差分法操作过程。检查DW,如果不合格,还需要在做一次广义差分。一般至多做两三次就可以了。过程有点复杂,其实用eviews做广义差分会简单许多。

    多元线性回归的内容已经结束了。祝大家学习愉快!


    展开全文
  • 使用ANOVA,MANOVA和Holt线性平滑模型对数据进行统计分析各个项目,包括多元线性和Logistic回归回归分析,预测销售时间序列分析。 独立样本T检验,独立性卡方检验也已进行。 #TOOLS:IBM SPSS Statistics,...
  • 市场分析 分散度衡量数据集分散程度。 方差和标准偏差告诉我们数量... 如果我们有一个自变量X和一个因果变量Y,则线性回归可以确定哪个线性模型Y =α+βX可以最好地解释数据。 回归分析使我们能够估计近似关联多
  • 书中首先简要介绍了多元线性回归、主成分分析和典型相关分析基本知识,并重点讨论了变量多重相关性在回归建模中危害。在此基础上,本书详细介绍了偏最小二乘回归线性与非线性方法,其中包括了偏最小二乘回归...
  • 线性模型的理论及其应用,扫描版PDF;包括多元正态及有关分布,参数估计,假设检验线性回归等章节
  • 本书是一部教材。全书共九章。...从第四章起,系统介绍线性模型统计推断基本理论与方法,包括:最小二乘估计/假设检验/置信区域/预测/线性回归模型/方差分析模型/协方差分析模型和线性混合效应模型。
  • 使用线性和谐波回归绘制多元回归。 计算移动平均低带通滤波器,并将其与原始数据和回归分析一起绘制。 先决条件 重要性测试 该脚本运行统计模型以运行双向检验。 时间序列数据用于计算方差-协方差矩阵。 最小二乘...
  • 有关回归分析所有算法,包括详细原理介绍及具体matlab代码,很适合初学者使用,及有关工程...其中包含了一元线性回归、最小二乘估计方法、显著性检验多元线性回归、利用回归模型预测、非线性回归、逐步回归等
  • 多元线性回归包括模型解释,检验和评价分析,内含数据,检验结果及模型的现实含义。
  • 主要内容包括多元正态分布、均值向量和协方差阵的检验、聚类分析、判别分析、主成分分析、因子分析、对应分析、典型相关分析等常见的主流方法,还参考国内外大量文献系统介绍了近年来在市场研究、顾客满意度研究、...
  • 不同于以往基于最小二乘的多元线性回归方法,本文将新型第二代回归分析方法一偏最小二乘回归分析方法应用到中国区域气温空间分布建模中.利用区域内394个气象观测站建站到2000年45年(及以上)逐日气温资料,...
  • 掌握线性回归分析建模与分析包括一元线性回归分析和多元线性回归分析 3.掌握回归分析中自变量选择原则与逐步回归方法掌握关于异方差性问题自相关性问题和多重共线性问题诊断与处理 二本课程要求学生完成工作...
  • 描述性统计分析涉及那些概念汇总

    千次阅读 2019-11-28 11:52:39
    我们成为**统计量**,其内容包括以下几方面:变量分类:分位数点估计与区间估计点估计:区间估计:区别:中心极限定理:正态分布检验假设检验Z检验T检验回归分析线性回归-直的多元线性回归线性回归模型评估 描述性统计分析 ...
  • 课程目标:(i)定量变量统计分析,包括相关性,简单和多元线性回归,线性模型方差分析和假设检验(t检验和F检验),以及(ii)分类数据分析,包括比例假设检验,列联表分析和逻辑回归。 课程说明:本课程...
  • Minitab软件是现代质量管理统计领先者,全球六...回归分析(一元回归和多元回归、线性回归和非线性回归) 方差分析(单因子、多因子、一般线性模型等) 时间序列分析 图表(散点图、点图、矩阵图、直方图、茎叶...
  • R 语言实战-Part 3 笔记

    2019-04-04 23:57:00
    R 语言实战(第二版) ...#最常用:OLS——普通最小二乘回归法,包括简单线性回归、多项式回归、多元线性回归 #过程:拟合OLS回归模型——>评价拟合优度——>假设检验——>选择模型 #OLS回...
  • MechaCar_Analysis-源码

    2021-04-12 08:55:32
    执行多元线性回归分析,以识别数据集中哪些变量可预测MechaCar原型mpg 从生产批次中收集悬挂线圈每平方英寸磅数(PSI)摘要统计信息 进行t检验以确定制造批次是否在统计上与平均人口不同 设计统计研究,以...
  • dps7.05.7z

    2019-07-11 13:25:51
    线性回归模型参数估计、模型模拟技术;单目标和多目标线性规划、非线性规划等运筹学方法;以及状态方程、数值分析、时间序列分析、模糊数学、随机森林、BP神经网络、径向基函数(RBF)、支持向量机(SVM)、层次分析、...
  • 关键统计检验包括:配对 t 检验、单比率和双比率检验、正态性检验、卡方检验和非参数检验。 预测式分析 可深入数据内部高级分析和机器学习技术。 用于 Logistic 回归、因子分析、变量聚类工具。 可视化 展示...

空空如也

空空如也

1 2
收藏数 35
精华内容 14
关键字:

多元线性回归模型的检验包括