非线性回归分析与SAS智能化实现
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

第4章 多重线性回归分析

在科学研究中,常遇到一个结果变量与多个原因变量数量关系的问题。用线性方程来定量地描述和揭示一个结果变量随几个原因变量变化的数量关系,就称为多重线性回归分析。本章简要概述了多重线性回归分析的原理,并结合实例介绍了如何运用SAS软件中REG过程来完成多重线性回归分析。

4.1 问题与数据

【例4-1】 有研究认为血清中低密度脂蛋白增高是引起动脉硬化的一个重要原因,现测量了30名被怀疑患有动脉硬化的就诊患者的载脂蛋白AⅠ、载脂蛋白B、载脂蛋白E、载脂蛋白C和低密度脂蛋白中的胆固醇含量,资料见表4-1。试采用常规的SAS编程技术分析4种载脂蛋白与低密度脂蛋白中胆固醇含量之间的关系。

表4-1 30名患者载脂蛋白和低密度脂蛋白中胆固醇含量的测量结果

【例4-2】 内容同例4-1资料,试采用高级SAS编程技术实现智能化的多重线性回归分析,以研究4种载脂蛋白与低密度脂蛋白中胆固醇含量之间的关系。

【例4-3】 为研究成年人的收缩压(SBP)与其年龄(age)、身高(height)、体重(weight)和BMI之间的关系,研究者收集了50名受试对象的相应资料,结果见表4-2。试采用常规的SAS编程技术对此资料进行多重线性回归分析。

表4-2 50名成年人的测量数据

【例4-4】 内容同例4-3资料,试采用高级SAS编程技术实现智能化的多重线性回归分析,以研究成年人的收缩压(SBP)与其年龄(age)、身高(height)、体重(weight)和BMI之间的关系。

4.2 分析与解答

4.2.1 对例4-1资料的分析

例4-1中,低密度脂蛋白中的胆固醇含量是一个定量指标,要研究它与多个影响因素之间的关系,可以考虑采用多重线性回归分析。SAS程序如下,设程序名为nr4 1.sas。

    data nr4_1;                 /*1*/
      input id x1-x4 y@ @ ;
      cards;
      1   173  106   7.0  14.7  137
      2   139  132   6.4  17.8  162
      3   198  112   6.9  16.7  134
      4   118  138   7.1  15.7  188
      5   139   94   8.6  13.6  138
      6   175  160  12.1  20.3  215
      7   131  154  11.2  21.5  171
      8   158  141   9.7  29.6  148
      9   158  137   7.4  18.2  197
      10  132  151   7.5  17.2  113
      11  162  110   6.0  15.9  145
      12  144  113  10.1  42.8   81
      13  162  137   7.2  20.7  185
      14  169  129   8.5  16.7  157
      15  129  138   6.3  10.1  197
      16  166  148  11.5  33.4  156
      17  185  118   6.0  17.5  156
      18  155  121   6.1  20.4  154
      19  175  111   4.1  27.2  144
      20  136  110   9.4  26.0   90
      21  153  133   8.5  16.9  215
      22  110  149   9.5  24.7  184
      23  160   86   5.3  10.8  118
      24  112  123   8.0  16.6  127
      25  147  110   8.5  18.4  137
      26  204  122   6.1  21.0  126
      27  131  102   6.6  13.4  130
      28  170  127   8.4  24.7  135
      29  173  123   8.7  19.0  188
      30  132  131  13.8  29.2  122
      ;
    run;
    ods html;
    proc reg data=nr4_1;       /*2*/
      model y=x1-x4/
      selection=stepwise sle=0.3
      sls=0.05;
    quit;
    proc reg data=nr4_1
      outest=model_int;        /*3*/
      model y=x2 x4/stb
      collin collinoint r bic;
    quit;
    proc reg data=nr4_1;       /*4*/
      model y=x1-x4/noint
      selection=stepwise
      sle=0.3 sls=0.05;
    quit;
    proc reg data=nr4_1
      outest=model_noint;      /*5*/
      model y=x2 x4/noint
      stb collin collinoint r
      bic;
    quit;
    proc print data=model_int; /*6*/
    title "有截距项时的逐步法得到的最终模
    型";
    run;
    proc print data=model_noint;
    title "无截距项时的逐步法得到的最终模
    型";
    run;
    title;
    ods html close;

【程序说明】 程序第1步是建立数据集,id代表患者编号,x1~x4分别表示载脂蛋白AⅠ、载脂蛋白B、载脂蛋白E和载脂蛋白C的含量,y表示低密度脂蛋白中的胆固醇含量。第2步是调用REG过程进行含有截距项的多重线性回归分析。“selection=stepwise”表示使用逐步法进行原因变量的筛选;“sle=0.3”表示纳入原因变量的检验水准为0.3;“sls=0.05”表示剔除原因变量的检验水准为0.05。第3步是对第2步确定的最终模型进行建模。model语句中的“stb”选项可以输出标准化偏回归系数;“collin”选项可以输出对截距项未校正的共线性诊断结果;“collinoint”选项可以输出对截距项校正了的共线性诊断结果;“r”选项用来进行残差分析;“bic”选项配合proc reg语句中的“outest=model int”选项可以将评价模型拟合效果的BIC统计量值输出到数据集model int中。第4步是调用REG过程进行不含截距项的多重线性回归分析,model语句中的“noint”选项用来控制模型中不包含截距项。第5步是对第4步确定的最终模型进行建模,并进行一些附加的分析。第6步和第7步分别输出数据集model int和model noint中的内容,主要用来比较BIC统计量的大小,以确定最优模型。

当然,第2步和第3步的程序可以合并如下:

          proc reg data=nr4_1 outest=model
          _int;
            model y=x1-x4/selection=step-
          wise sle=0.3 sls=0.05 stb collin
          collinoint r bic;
          quit

第4步和第5步的程序也可以合并如下:

          proc reg data=nr4_1 outest=model
          _int;
            model y =x1-x4/noint selection
          =stepwise sle =0.3 sls =0.05 stb
          collin collinoint r bic;
          quit;

这样合并后的程序的运行结果与程序nr4 1.sas中第2步至第5步的输出结果基本一致。但有一点存在差别,那就是BIC统计量的值。以本资料为例,程序nr4 1.sas计算的含有截距项和不含截距项两种情形下最终模型的BIC统计量的值分别为195.448,194.997,而上述合并程序计算的两种情形下最终模型的BIC统计量的值则分别为195.559,194.802。可见,两种编程方式所得的相同模型的BIC统计量的值是存在细微差异的,这可能是由于SAS软件编写时,两种方式的计算精度不同所致。对本资料而言,均是不含截距项情形下最终模型的BIC统计量的值小于含有截距项情形下最终模型的BIC统计量的值,两种方式所得的结论是一致的,所以几乎没有影响。当然,也不排除在某些特殊情形下,两种方式所得的结论是不一致的,这时可结合其他的拟合效果统计量来综合评判和选择模型。

【SAS输出结果及其解释】

以下是含有截距项时,采用逐步法进行多重线性回归分析的具体步骤和结果。

The REG Procedure

Model:MODEL1

Dependent Variable:y

Number of Observations Read 30

Number of Observations Used 30

这是模型的基本信息,共有观测点30个。

这是逐步法的第1步,选入了对结果变量贡献最大的原因变量x2

这是逐步法的第2步,选入了原因变量x4

这是逐步法的第3步,选入了原因变量x1

这是逐步法的第4步,剔除了原因变量x1

All variables left in the model are significant at the 0.0500 level.

The stepwise method terminated because the next variable to be entered was just removed.

由于拟进入模型中的原因变量恰好是刚刚被剔除出模型的那个变量(即x1),逐步法终止。所有保留在模型的原因变量,其对应的P值均小于0.05。

这是对逐步法筛选过程的总结,清晰地显示出各步分别纳入和剔除了什么变量。

以下是在保留截距项的情形下,使用逐步法进行多重线性回归分析所得到的最终模型。

这是对模型整体有无统计学意义进行假设检验的结果。F=15.70,对应的P<0.0001,说明拟合的多重线性回归方程在整体上是有统计学意义的。

这是评价模型拟合效果的一些统计量。“Root MSE”表示误差均方根,其值越小,反映模型拟合效果就越好。“R-Square”表示决定系数,其值越大,反映模型拟合效果越好。“Adj R-Sq”表示校正的R2,其值越大反映模型拟合效果越好。

这是参数估计的结果。从前至后依次是变量名、自由度、参数估计值、标准误、t值、P值及标准化偏回归系数。可以看出,原因变量x2x4 的偏回归系数对应的P值依次为<0.0001和0.0013,均有统计学意义,但截距项对应的P值为0.1933 >0.05,说明截距项与0之间的差异无统计学意义,故此模型仍然不是最优模型。若构造该模型的回归方程(原理参见4.3节),则有:

y = 41.84089 +1.25446x2 -2.34079x4

由最后一列的标准化偏回归系数的绝对值大小可以看出,变量x2 对低密度脂蛋白中胆固醇含量的影响(系数为0.67562)要大于变量x4(系数为-0.48458)。

这是共线性诊断的结果,包括未对截距项进行调整以及将截距项调整出去之后的结果。当截距项无统计学意义时,查看未对截距项进行调整的共线性诊断结果即可;反之,则应查看将截距项调整出去之后的共线性诊断结果。本模型中,截距项无统计学意义,应查看“Collinearity Diagnos-tics”部分的结果,条件数为17.17105,大于10且小于30。从条件数的值,可初步认为模型存在中等程度的共线性,然后再结合方差分量来进一步判断是否确实存在共线性及存在共线性的变量是哪些。条件数所在行中,方差分量(Proportion of Variation)大于0.5的是截距项和x2,说明这两者之间存在着一定程度的共线性。需要说明的是,对于条件数大于10,而对应的方差分量大于0.5的仅仅是截距项和某一个原因变量的特殊情形,可视为不存在共线性。

在程序第3步,model语句的“/”后加入“vif”选项,在输出结果的“Parameter Estimates”部分,最后可多输出一列“Variance Inflation”,即方差膨胀因子(详见4.3.6小节),其值为1.05821 <5,再次说明模型中不存在共线性。

这是残差分析的结果,其中第1列为观测号,第2列至第4列分别为结果变量的观测值、预测值与预测值的标准误,第5列和第6列为残差及其标准误,第7列为学生化残差,第8列为学生化残差在各个观测点的粗略分布图,第9列为Cook's D统计量。当学生化残差的绝对值大于2时,对应的观测点可能就是异常点,本例中第10例观测学生化残差的绝对值为3.514,很可能是异常点,所以要对该点的情况进行仔细考察,具体参考4.3节中的方法进行处理。

Sum of Residuals 0

Sum of Squared Residuals 15185

Predicted Residual SS(PRESS)18462

这是评价回归方程预测效果的统计量。“Sum of Residuals”表示残差之和,“Sum of Squared Re-siduals”表示残差平方和,“Predicted Residual SS(PRESS)”表示预测残差平方和。预测残差平方和的含义是:每次去掉一个观测建立回归方程,并将去掉的那个观测的原因变量的取值代入回归方程计算出与该观测对应的结果变量的预测值,进而求出该观测上结果变量的残差(即结果变量的观测值与刚算出的预测值之差)的平方。这样的工作从第一个观测到最后一个观测分别做一次,将全部观测上的残差平方相加,就称为预测残差平方和(PRESS)。

以下是不含截距项时,采用逐步法进行多重线性回归分析的具体步骤和结果。

这是逐步法的第1步,选入了对结果变量贡献最大的原因变量x2。需要注意的是,此模型中不包含截距项,故其R2的计算方法不同于含有截距项的回归模型,两类模型不宜直接依据R2的大小比较它们的拟合效果,后同。

这是逐步法的第2步,选入了原因变量x4

这是逐步法的第3步,选入了原因变量x1

这是逐步法的第4步,剔除了原因变量x1

All variables left in the model are significant at the 0.0500 level.

The stepwise method terminated because the next variable to be entered was just removed.

Note:No intercept in model. R-Square is redefined.

由于拟进入模型中的原因变量恰好是刚刚被剔除出模型的那个变量(即x1),逐步法终止。所有保留在模型的原因变量,其对应的P值均小于0.05。

这是对逐步法筛选过程的总结,清晰地显示出各步分别纳入和剔除了什么变量。

以下是在不含截距项的情形下,使用逐步法进行多重线性回归分析所得到的最终模型。

这是对模型整体有无统计学意义进行假设检验的结果。F=611.30,对应的P<0.0001,说明拟合的多重线性回归方程在整体上是有统计学意义的。

Root MSE 24.04307 R-Square 0.9776

Dependent Mean 151.66667 Adj R-Sq 0.9760

Coeff Var 15.85258

这是评价模型拟合效果的一些统计量。

这是参数估计的结果。从前至后依次是变量名、自由度、参数估计值、标准误、t值、P值及标准化偏回归系数。可以看出,原因变量 x2x4 的偏回归系数对应的 P 值依次为小于0.0001和0.0022,均有统计学意义。故可构造回归方程(原理参见4.3节)如下:

y = 1.55505x2 -2.17820x4

由标准化偏回归系数的绝对值大小可以看出,变量x2 对低密度脂蛋白中胆固醇含量的影响(1.27013)要大于变量x4(-0.30138)。

这是共线性诊断的结果,包括未对截距项进行调整以及将截距项调整出去之后的结果。由于本模型并不包含截距项,所以两者的结果是一致的。这部分结果具体包括特征根、条件数与方差分量,由以上可以看出条件数为6.17477,该值小于10,说明这两个原因变量的多重共线性对参数估计的影响很小,可以采用最小二乘法进行参数估计。

这是残差分析的结果,本例中第10例观测学生化残差的绝对值为3.665,很可能是异常点,所以要对该点的情况进行仔细考察,具体参见4.3节中的办法进行处理。

Sum of Residuals 23.92565

Sum of Squared Residuals 16186

Predicted Residual SS(PRESS)18560

这是评价回归方程预测效果的统计量。

有截距项时的逐步法得到的最终模型

这是在有截距项的情形下,得到的最终模型的有关信息。其中,BIC列即为BIC统计量的值,该值越小,表明模型对数据的拟合效果越好。可见,有截距项情形下得到的最终模型的BIC统计量的值为195.448。

无截距项时的逐步法得到的最终模型

这是在无截距项的情形下,得到的最终模型的有关信息。可见,无截距项情形下得到的最终模型的BIC统计量的值为194.997,小于有截距项情形下得到的最终模型的BIC统计量的值,故无截距情形下得到的最终模型应为最优模型。当然,由于该资料在有截距项情形下得到的最终模型中的截距项无统计学意义,所以,无须比较BIC统计量的值的大小,就能确定最优模型为无截距项情形下得到的最终模型。

4.2.2 对例4-2资料的分析

对例4-2资料采用高级SAS编程技术实现智能化的多重线性回归分析,SAS程序如下,程序名为nr4 2.sas。

    % let dataset=nr4_2;        /*1*/
    data &dataset;              /*2*/
      input id x1-x4 y@ @ ;
      cards;
      1   173  106   7.0  14.7  137
      2   139  132   6.4  17.8  162
      3   198  112   6.9  16.7  134
      4   118  138   7.1  15.7  188
      5   139   94   8.6  13.6  138
      6   175  160  12.1  20.3  215
      7   131  154  11.2  21.5  171
      8   158  141   9.7  29.6  148
      9   158  137   7.4  18.2  197
      10  132  151   7.5  17.2  113
      11  162  110   6.0  15.9  145
      12  144  113  10.1  42.8   81
      13  162  137   7.2  20.7  185
      14  169  129   8.5  16.7  157
      15  129  138   6.3  10.1  197
      16  166  148  11.5  33.4  156
      17  185  118   6.0  17.5  156
      18  155  121   6.1  20.4  154
      19  175  111   4.1  27.2  144
      20  136  110   9.4  26.0   90
      21  153  133   8.5  16.9  215
      22  110  149   9.5  24.7  184
      23  160   86   5.3  10.8  118
      24  112  123   8.0  16.6  127
      25  147  110   8.5  18.4  137
      26  204  122   6.1  21.0  126
      27  131  102   6.6  13.4  130
      28  170  127   8.4  24.7  135
      29  173  123   8.7  19.0  188
      30  132  131  13.8  29.2  122
      ;
    run ;
    % multi_linear(x1-x4);       /*3*/

【程序说明】 程序第1步设置一个宏变量,其含义为数据集名称,此举主要是为了方便数据集的调整。第2步是建立数据集,id代表患者编号,x1~x4分别表示载脂蛋白AⅠ、载脂蛋白B、载脂蛋白E和载脂蛋白C的含量,y表示低密度脂蛋白中的胆固醇含量。第3步调用自编的以最优子集法进行多重线性回归分析的宏程序multi linear。该宏中包含一个宏参数,其含义是原因变量的名称,多个原因变量之间以空格间隔。该宏程序默认分析处理的数据集是第1步中宏变量dataset所指代的数据集。需要注意的是,为节省宏中需要用户给出的宏参数的个数,结果变量统一以y表示,原因变量的名称可根据SAS软件的命名规则自行定义。另外,如果原因变量中含有多值名义变量,分析前需要对其进行哑变量化。

【SAS输出结果及其解释】

结果同4.2.1小节不含截距项情形下,所得的最终模型的分析结果。读者可自行对比一下二者的输出结果,程序nr4 2.sas的输出内容远远少于程序nr4 1.sas,结果的可读性大大提高。而且,也无须读者借助BIC统计量的值来人工判定何者为最优模型。

4.2.3 对例4-3资料的分析

例4-3中,收缩压是一个定量指标,要研究它与多个影响因素之间的关系,可以考虑采用多重线性回归分析。SAS程序如下,设程序名为nr4 3.sas。

    data nr4_3;               /*1*/
      input id x1-x4 y@ @ ;
      cards;
      1   28  68  160  24.33  111
      2   26  68  165  25.09  101
      3   31  68  175  26.61  120
      4   18  76  265  32.26  158
      5   50  67  145  22.71  125
      6   42  69  247  36.48  166
      7   20  66  156  25.18  114
      8   29  76  180  21.91  143
      9   35  63  166  29.41  111
      10  47  66  169  27.28  133
      11  20  69  120  17.72   95
      12  33  68  133  20.22  113
      13  24  71  185  25.80  128
      14  28  72  150  20.34  110
      15  32  61  126  23.81  117
      16  21  68  190  28.89  112
      17  28  71  150  20.92  110
      18  60  61  130  24.56  117
      19  55  66  215  34.70  142
      20  74  65  130  21.63  105
      21  38  68  126  19.16   94
      22  26  66  160  25.82  131
      23  52  74  328  42.11  128
      24  25  69  125  18.46   93
      25  24  67  133  20.83  103
      26  26  59  105  21.21  114
      27  51  64  119  20.43  130
      28  29  62   98  17.92  105
      29  26  64  150  25.75  117
      30  60  64  175  30.04  124
      31  22  70  190  27.26  122
      32  19  65  125  20.80  112
      33  39  73  210  27.71  135
      34  77  62  138  25.24  150
      35  39  73  230  30.34  125
      36  40  69  170  25.10  126
      37  44  62  115  21.03   99
      38  27  61  140  26.45  114
      39  29  73  220  29.03  139
      40  78  63  110  19.49  150
      41  62  65  208  34.61  112
      42  22  71  125  17.43  127
      43  37  64  176  30.21  125
      44  38  72  195  26.45  136
      45  22  65  140  23.30  108
      46  79  61  125  23.62  156
      47  24  62  146  26.70  108
      48  32  67  141  22.08  105
      49  42  70  192  27.55  121
      50  42  68  185  28.13  126
      ;
    run;
    ods html;
    proc reg data=nr4_3;            /
    *2*/
      model y=x1-x4/
      selection=stepwise sle=0.3
      sls=0.05;
    run;
    proc reg data=nr4_3
      outest=model_int;        /*3*/
      model y=x1 x3/stb
      collin collinoint r bic;
    quit;
    proc reg data=nr4_3;       /*4*/
      model y=x1-x4/noint
      selection=stepwise
      sle=0.3 sls=0.05;
    run;
    proc reg data=nr4_3
      outest=model_noint;      /*5*/
      model y=x1 x2 x4/noint
      stb collin collinoint r bic;
    quit;
    proc print data=model_int;
    title "有截距项时的逐步法得到的最终模
    型";
    run;
    proc print data=model_noint;
    title "无截距项时的逐步法得到的最终模
    型";
    run;
    title;
    ods html close;

【程序说明】 程序第1步是建立数据集,id代表患者编号,x1x4 分别表示年龄、身高、体重和BMI值,y表示收缩压。其他解释同程序nr4 1.sas。

【SAS输出结果及其解释】

以下是含有截距项时,采用逐步法进行多重线性回归分析的具体步骤和结果。为节省篇幅,此处直接给出逐步法筛选的总结结果。可见,原因变量x3x1 依次进入模型。

Summary of Stepwise Selection

以下是在保留截距项的情形下,使用逐步法进行多重线性回归分析所得到的最终模型。

这是对模型整体有无统计学意义进行假设检验的结果。F=13.94,对应的P<0.0001,说明拟合的多重线性回归方程在整体上是有统计学意义的。

这是评价模型拟合效果的一些统计量。

这是参数估计的结果。从前至后依次是变量名、自由度、参数估计值、标准误、t值、P值及标准化偏回归系数。可以看出,原因变量x1x3 的偏回归系数对应的P值依次为0.0013和0.0002,截距项对应的P<0.0001,均有统计学意义。构造该模型的回归方程(原理参见4.3节),则有:

y = 77.18464 +0.40642x1 +0.17727x3

由最后一列的标准化偏回归系数的绝对值大小可以看出,变量x3 对收缩压的影响(系数为0.46651)要大于变量x1(系数为0.39512)。

这是共线性诊断的结果,包括未对截距项进行调整以及将截距项调整出去之后的结果。由于本模型中包含截距项,所以两者的结果是不一致的,此时应参考未对截距项进行调整的共线性诊断结果。由以上可以看出条件数为9.65119,该值小于10,说明模型中几乎不存在多重共线性,可以采用最小二乘法进行参数估计。

这是残差分析的结果,本例中第4,6,23,41例观测学生化残差的绝对值大于2,可能是异常点,所以要对这些点的情况进行仔细考察,具体参见4.3节中的办法进行处理。

Sum of Residuals 0

Sum of Squared Residuals 8776.33728

Predicted Residual SS(PRESS)11431

这是评价回归方程预测效果的统计量。“Sum of Residuals”表示残差之和,“Sum of Squared Re-siduals”表示残差平方和,“Predicted Residual SS(PRESS)”表示预测残差平方和。

以下是不含截距项时,采用逐步法进行多重线性回归分析的具体步骤和结果。为节省篇幅,此处直接给出逐步法筛选的总结结果。可见,原因变量x2x1x4 依次进入模型。

以下是在不含截距项的情形下,使用逐步法进行多重线性回归分析所得到的最终模型。

Model:MODEL1

Dependent Variable:y

Number of Observations Read 50

Number of Observations Used 50

Note:No intercept in model. R-Square is redefined.

这是模型的基本信息,共有观测点50个。

这是对模型整体有无统计学意义进行假设检验的结果。F=1321.82,对应的P小于0.0001,说明拟合的多重线性回归方程在整体上是有统计学意义的。

这是评价模型拟合效果的一些统计量。需要注意的是,此模型中不包含截距项,故其R2的计算方法不同于含有截距项的回归模型,两类模型不宜直接依据R2的大小比较它们的拟合效果。

这是参数估计的结果。可以看出,原因变量 x1x2x4 的偏回归系数对应的 P 值依次为0.0004,<0.0001和0.0147,均有统计学意义。故可构造回归方程(原理参见4.3节)如下:

y = 0.44541x1 +1.17436x2 +1.02485x4

由标准化偏回归系数的绝对值大小可以看出,变量x2 对收缩压的影响最大,其次是x4,影响最小的是x1

这是共线性诊断的结果,包括未对截距项进行调整以及将截距项调整出去之后的结果。由于本模型不包含截距项,所以两者的结果是一致的。由以上可以看出条件数为12.39078,该值略大于10,说明该模型存在一定程度的多重共线性。条件数所在行中,x2x4 对应的方差分量(Propor-tion of Variation)均大于0.5,说明这两个变量之间是存在一定的相关性的。

这是残差分析的结果,本例中第4,6,20,23,41例观测学生化残差的绝对值大于2,可能是异常点,所以要对这些点的情况进行仔细考察,具体参见4.3节中的办法进行处理。

Sum of Residuals 0.20184

Sum of Squared Residuals 8784.04424

Predicted Residual SS(PRESS)11039

这是评价回归方程预测效果的统计量。“Sum of Residuals”表示残差之和,“Sum of Squared Re-siduals”表示残差平方和,“Predicted Residual SS(PRESS)”表示预测残差平方和。

有截距项时的逐步法得到的最终模型

这是在有截距项的情形下,得到的最终模型的有关信息。其中,BIC列即为BIC统计量的值,该值越小,表明模型对数据的拟合效果越好。可见,有截距项情形下得到的最终模型的BIC统计量的值为266.764。

无截距项时的逐步法得到的最终模型

这是在无截距项的情形下,得到的最终模型的有关信息。可见,无截距项情形下得到的最终模型的BIC统计量的值为266.808,略大于有截距项情形下得到的最终模型的BIC统计量的值,且由于无截距项情形下得到的最终模型中原因变量间存在多重共线性,故以有截距项情形下得到的最终模型为最优模型。

4.2.4 对例4-4资料的分析

对例4-4资料采用高级SAS编程实现智能化的多重线性回归分析,SAS程序如下,程序名为nr4 4.sas。

    % let dataset=nr4_4;       /*1*/
    data &dataset;             /*2*/
      input id x1-x4 y@ @ ;
      cards;
      1         28  68  160  24.33  111
      2         26  68  165  25.09  101
      3         31  68  175  26.61  120
      4         18  76  265  32.26  158
      5         50  67  145  22.71  125
      6         42  69  247  36.48  166
      7         20  66  156  25.18  114
      8         29  76  180  21.91  143
      9         35  63  166  29.41  111
      10        47  66  169  27.28  133
      11        20  69  120  17.72   95
      12        33  68  133  20.22  113
      13        24  71  185  25.80  128
      14        28  72  150  20.34  110
      15        32  61  126  23.81  117
      16        21  68  190  28.89  112
      17        28  71  150  20.92  110
      18        60  61  130  24.56  117
      19        55  66  215  34.70  142
      20        74  65  130  21.63  105
      21        38  68  126  19.16   94
      22        26  66  160  25.82  131
      23        52  74  328  42.11  128
      24        25  69  125  18.46   93
      25        24  67  133  20.83  103
      26        26  59  105  21.21  114
      27        51  64  119  20.43  130
      28        29  62   98  17.92  105
      29        26  64  150  25.75  117
      30        60  64  175  30.04  124
      31        22  70  190  27.26  122
      32        19  65  125  20.80  112
      33        39  73  210  27.71  135
      34        77  62  138  25.24  150
      35        39  73  230  30.34  125
      36        40  69  170  25.10  126
      37        44  62  115  21.03   99
      38        27  61  140  26.45  114
      39        29  73  220  29.03  139
      40        78  63  110  19.49  150
      41        62  65  208  34.61  112
      42        22  71  125  17.43  127
      43        37  64  176  30.21  125
      44        38  72  195  26.45  136
      45        22  65  140  23.30  108
      46        79  61  125  23.62  156
      47        24  62  146  26.70  108
      48        32  67  141  22.08  105
      49        42  70  192  27.55  121
      50        42  68  185  28.13  126
      ;
    run;
    % multi_linear(x1-x4);    /*3*/

【程序说明】 程序第1步设置一个宏变量,其含义为数据集名称,此举主要是为了方便数据集的调整。第2步是建立数据集,id代表患者编号,x1~x4分别表示年龄、身高、体重和BMI值,y表示收缩压。第3步调用自编的以最优子集法进行多重线性回归分析的宏程序multi linear。该宏中包含一个宏参数,其含义是原因变量的名称,多个原因变量之间以空格间隔。该宏程序默认分析处理的数据集是第1步中宏变量dataset所指代的数据集。需要注意的是,为节省宏中需要用户给出的宏参数的个数,结果变量统一以y表示,原因变量的名称可根据SAS软件的命名规则自行定义。

【SAS输出结果及其解释】

结果同4.2.3小节含有截距项情形下,所得的最终模型的分析结果。读者可自行对比一下二者的输出结果,程序nr4 4.sas的输出内容远远少于程序nr4 3.sas,结果的可读性大大提高。而且,也无须读者借助BIC统计量的值来人工判定何者为最优模型。

另外,若根据BIC统计量的值确定的最优模型存在一定程度或严重的多重共线性,可视情况参照4.3.6小节进行调整。

4.3 计算原理

4.3.1 基本概念

在简单线性回归分析中,只涉及一个结果变量和一个原因变量,但是在通常情况下,一个定量的结果可能会同时受到许多因素的影响,因此,需要把简单线性回归分析推广到多个原因变量的情形,从而起到更有效的预报、控制及识别影响因素的作用。用线性回归方程来定量地描述和揭示一个结果变量随几个原因变量变化的数量关系,就称为多重线性回归分析。

Y代表结果变量,X1X2,…,Xm分别代表 m个原因变量,则多重线性回归模型可以表示为:

式中,β0为截距,β1β2,…,βm分别为各个原因变量所对应的回归系数,ε为随机误差,假定它服从正态分布。多重线性回归模型中包含多个原因变量,它们同时对结果变量Y 发生作用。若要考察某一个原因变量对Y 的影响,就必须假设其他原因变量保持不变。因此,多重线性回归模型中的回归系数又称为偏回归系数。偏回归系数βii=1,2,…,m)表示在其他原因变量固定不变的情况下,Xi每改变一个测量单位时所引起的结果变量Y的平均改变量。多重线性回归模型的样本回归方程可以表示为:

式中,Y 表示Y的估计值,b0b1b2,…,bm为截距和偏回归系数的样本估计值。

根据回归方程得到的结果变量估计值向量Y 与实际观测值Y 之差为残差e,其值为:

与简单线性回归分析类似,多重线性回归分析也要求X1X2,…,XmY之间的关系为线性关系;各个观察值之间相互独立;每一组原因变量X1X2,…,Xm对应的Y服从正态分布,且各个正态分布的方差相等。除此之外,还要求多个原因变量之间相关性不要太强。

需要说明的是,在实际使用时,关于结果变量Y的上述正态性条件是否满足是无法判定的,因为与每一组原因变量X1X2,…,Xm对应的Y观测值往往只有一个,所以一般能粗略地考察全部Y的观测值是否近似服从正态分布。

4.3.2 参数估计

多重线性回归分析中,参数估计常使用最小二乘法,求出的回归方程使得残差平方和

达到最小。为了使Q达到最小,将Qb0b1b2,…,bm求一阶偏导数并且使之为0,就可以得到正规方程组,然后由正规方程组便能够解得各个参数的估计值。具体的计算过程不再赘述,感兴趣的读者可以参考相关文献。

4.3.3 假设检验

1. 回归方程的假设检验

在估计出回归模型的参数以后,需要对回归方程进行假设检验,检验的原假设为:

该假设表示所有的偏回归系数都为零,也就是全部原因变量对结果变量的作用都没有统计学意义,相应的备择假设为偏回归系数不全为零。检验的方法是方差分析,其基本思想与简单线性回归分析相同,将总的离均差平方和SS分解为回归平方和SS与残差平方和SS,然后构造F统计量,该统计量的计算见式(4-6)。

计算F值对应的P值,如果得到的P值小于事先确定的显著性水平,就说明回归方程有统计学意义。

需要说明的是,SAS软件在计算SS时有两种不同的方法,当模型中保留截距项时,SS为常规的离差平方和,当模型中未保留截距项时,SS为观测值的平方和,后同。

2. 偏回归系数的假设检验

回归方程有统计学意义,可以说明整体上原因变量对Y 有影响,但并不意味着每个原因变量对结果变量的影响都有统计学意义。所以,在对整个回归方程进行假设检验之后,还有必要对每一个偏回归系数进行检验,检验的原假设和备择假设分别为H0βi=0;H1βi≠0;i=1,2,…,m。具体检验时,可以根据偏回归平方和构造F统计量,也可以采用t检验,这两种方法是等价的。

多重线性回归分析中原因变量Xi的偏回归平方和用Pi表示,它代表从回归方程中剔除Xi后回归平方和的减少量,或者在l-1个原因变量的基础上新增加Xi后回归平方和的增加量。偏回归平方和的大小可用来衡量原因变量Xi在回归中所起作用的大小,它的取值越大,说明Xi越重要。对原因变量Xi进行检验的统计量Fi为:

该统计量分子和分母的自由度分别为1与n-m-1。

使用t检验对偏回归系数进行检验时,检验统计量ti的计算公式为:

式中,bi是偏回归系数的估计值,Sbibi的标准误,ti服从自由度为ν=n-m-1的t分布。

求出上述检验统计量后,可以查相应的临界值表得出P值,从而判定XiY的影响是否具有统计学意义,也即XiY之间是否存在线性关系。

4.3.4 原因变量的筛选方法

在回归分析问题中,影响结果变量Y的原因变量往往会有很多,这些原因变量对结果变量的贡献不尽相同,有些原因变量对结果变量的影响可能很小。如果将一些作用不大的原因变量纳入模型,反而会影响预测的精度。因此,多重线性回归分析中,首先要对原因变量进行筛选。原因变量的筛选方法比较多,这里简要介绍SAS软件中所提供的八种方法,同时也对一些评价回归方程优劣的指标做出说明。

1.前进法

模型中原因变量从无到有依次选一变量进入模型。首先,根据各原因变量在模型中的Ⅱ型离差平方和计算其对应的F值和P值,若所有原因变量对应的P值均大于事先确定的纳入标准时,则没有原因变量可以进入模型。否则,选择最小的P值所对应的那个原因变量开始纳入。每纳入一个原因变量后,都需要重新计算剩余各原因变量所对应的F值和P值,然后再按照前述标准和方法类推,直到没有原因变量可入选为止。它的局限在于纳入标准的显著性水平α取值小时,可能没有一个原因变量能入选;纳入标准的显著性水平α取值较大时,由于开始选入的原因变量后来不再进行检验,因而在不同变量组合的新条件下变得无统计学意义的原因变量没有机会被剔除掉。

2.后退法

回归模型中最初包含所有的原因变量,然后逐步剔除无统计学意义的原因变量。首先,从全模型开始,计算各原因变量所产生的F统计量值及对应的P值,若所有原因变量对应的P值均小于事先确定的剔除标准,则此模型即为最终模型。否则,从最大的P值所对应的原因变量开始剔除。每剔除一个原因变量后,都需要重新计算剩余各原因变量所对应的F值和P值,然后再按照前述标准和方法类推,直到模型中没有变量可以被剔除时为止。后退法的局限在于剔除标准α较大时,任何一个原因变量都不能被剔除;剔除标准较α小时,开始被剔除的原因变量后来在新条件下即使变得对因变量有较大的贡献了,也不能再次被选入回归模型并参与检验。

3.逐步筛选法

逐步筛选法可以看作是前进法和后退法的结合。模型中的原因变量从无到有像前进法那样,根据F统计量和P值按纳入标准α1 决定该原因变量是否入选;当模型选入原因变量后,又像后退法那样,根据F统计量和P值按剔除标准α2 剔除无统计学意义的原因变量。以此类推,直到没有原因变量可入选,也没有原因变量可被剔除,则停止逐步筛选过程。逐步筛选法能比前进法和后退法更好地选出原因变量构造模型,但也有它的局限性:其一,在有p个原因变量入选后,选第p+1个原因变量时,对它来说,前p个原因变量不一定是最佳组合;其二,选入或剔除原因变量仅以F值(或对应的α值)作标准,完全没考虑其他标准。

4.最大R2增量法

决定系数R2的计算可参见式(4-10),在多重线性回归分析中它也是回归平方和与总的离均差平方和之比,该统计量反映了模型对数据拟合的优劣程度。首先找到具有最大决定系数R2的单变量回归模型,接着引入产生最大R2增量的另一原因变量。然后对于该两变量的回归模型,用其他原因变量逐次替换,计算回归方程的R2,如果替换后的模型能产生最大R2增量,即为两变量最优回归模型,如此再找下去,直到入选原因变量数太多,使设计矩阵不再满秩时为止。该方法也是一种逐步筛选法,只是筛选变量所用的准则不同,不是用F值,而是用决定系数R2判定原因变量是否入选。因它不受纳入和剔除标准的限制,总能从变量中找到相对最优者,这就克服了前述三种方法的局限性,即找不到任何原因变量可进入模型的情况。本法的局限与逐步筛选法相似,当有p个变量入选后,选第p+1个变量时,对它来说,前p个变量不一定是最佳组合。

5.最小R2增量法

首先找到具有最小决定系数R2的单变量回归模型,然后从其余原因变量中选出一个原因变量,使它构成的模型比其他原因变量所产生的R2增量都小,不断用新变量来替换老变量,以此类推,这样就会顺次列出全部单变量回归方程,依次为R2最小者、R2增量最小者、R2增量次小者、…、R2增量最大者,在这些含一个原因变量的回归方程中,最后一个为单变量最佳模型;两变量最小R2增量的筛选类似于第4种方法,但引入的是产生最小R2增量的另一原因变量。对该两变量的回归方程,再用其他原因变量替换,替换成产生最小R2增量者、次小R2`增量者,直至R2不能再增加为止,即为两变量最优回归模型。以此类推,继续找含三个或更多原因变量的最优回归模型。它与第4种方法得到的“最优”模型常常相同,但它在寻找最优方程过程中所考虑的中间模型要比第4种方法多。本法的局限与第3、4种方法相似,当有p个原因变量入选后,选第p+1个变量时,每次只有一个原因变量进或出,在原因变量间有复杂关系时,就有可能找不到最佳组合。

6.R2选择法

从全部原因变量所有可能子集中选出某个子集,使该子集所构成的模型的决定系数 R2最大。本法和后面的第7、第8两种方法分别是按不同标准选出回归模型原因变量的最优子集。R2选择法的局限在于计算量比较大,特别是在原因变量个数较多时。另外R2经常是随着原因变量个数的增加而增大,即使某个新增加的原因变量经检验可能没有统计学意义,这样的模型往往不够简约。

7.校正R2选择法

R2总是随着原因变量个数的增加而增大,而在建立回归方程时,总是希望在模型最优的前提下,原因变量个数尽可能地少。为了较好地对包含不同个数原因变量的回归方程进行比较,在考虑方程所包含的原因变量个数的基础上,提出了校正决定系数,记为R2c。当R2相同时,原因变量个数越少R2c 越大。本方法就是根据R2c 最大的原则,从原因变量的所有子集中选出最优者。

8.Mallow's Cp选择法

Mallow's Cp也可以用来评价回归模型,其计算公式为:

式中,p为方程中所包含的参数个数(若方程中有截距项,亦包括在内),(SSEp为包含p个参数的

回归方程所对应的残差平方和,(MSEm为包含所有原因变量的回归方程(即全模型)所对应的残差均方,m为全模型方程中所包含的参数个数(若方程中有截距项,亦包括在内)。

该方法就是选择Cp最接近于p的回归方程为最优回归方程,若有多对(p,Cp)数值,提出此方法的研究者建议取首次满足Cpp的回归方程(即参数个数较小者)。

R2选择法、校正R2选择法和Mallow's Cp选择法都属于最优回归子集法,即SAS系统只给出含不同数目原因变量的组合,仍需要用户指定所需要的特定变量组合,再让SAS系统进行回归系数的参数估计和假设检验。当计算结果中含有P>0.05的原因变量时,仍需要基于给定的变量组合进行变量筛选。所以,实际使用时,仍然相当不便。

究竟哪一种筛选变量的方法最好,没有绝对的定论。一般来说,逐步回归法和最优回归子集法较好。对于一个给定的资料,最好尝试多种变量筛选的方法,结合以下几条评价标准,从中选择最佳者。

第一,拟合的多重线性回归方程在整体上有统计学意义;

第二,多重线性回归方程中各回归参数估计值的假设检验结果都有统计学意义;

第三,多重线性回归方程中各回归参数估计值的正负号与专业上的含义相吻合;

第四,根据多重线性回归方程计算出结果变量的所有预测值在专业上都有意义;

第五,若有多个较好的多重线性回归方程时,残差平方和较小且方程中所含的原因变量的个数又较少者为最佳。

4.3.5 模型拟合效果的评价

1.决定系数R2

即复(全)相关系数的平方,其值等于结果变量的观测值与预测值之间简单相关系数的平方。计算公式为:

式中,R2取值介于0到1之间,其含义为原因变量能够解释结果变量y变异的百分比。R2越接近于1,说明线性回归对实际数据的拟合程度越好。

2.校正决定系数

随着模型中原因变量个数的增加,决定系数R2将不断增大,这不符合回归模型中原因变量个数尽可能少的原则(即简约性原则)。故在评价两个包含不同个数原因变量的回归模型的拟合效果时,不能简单地用决定系数作为评价标准。此时,必须考虑回归模型中原因变量个数的影响。构造校正决定系数,其公式为:

式中,n为样本含量,p为模型中参数的个数。当模型中保留截距项时,i=1;否则,i=0。

3.AIC信息准则

该准则由日本学者赤池于1973年提出,广泛应用于时间序列分析中自回归阶数的确定,多重回归、广义线性回归中原因变量的筛选以及非线性回归模型的比较和选优。其计算公式为:

式中,p为模型中参数的个数。

除此之外,评价多重线性回归分析所得模型对资料拟合效果的统计量还有BIC统计量、PRESS统计量等,不再一一介绍。

4.3.6 回归诊断方法

多重线性回归分析中,可能会出现以下问题:

(1)回归方程整体的检验有统计学意义,而各偏回归系数的检验均无统计学意义;

(2)偏回归系数的估计值或其符号与实际情况和专业知识相违背,难以解释。

导致这些问题的可能原因有:

(1)研究设计不够合理;

(2)资料收集存在问题;

(3)原因变量间近似线性;

(4)数据中存在异常点;

(5)样本少而原因变量多。

因此,在得到多重线性回归分析模型后,往往需要对模型进行诊断,这包括两个方面:共线性诊断和异常点诊断。

当一个或几个原因变量可以由另外的原因变量线性表示时,称该原因变量与另外几个原因变量间存在多重共线性关系。在医学研究中,经常会遇到原因变量间存在线性关系或者接近线性关系,当原因变量间有共线性关系时,必然使回归系数的估计变得不稳定。原因变量间即使不是完全的共线性,而是近似的共线性时(如相关系数接近于1),将使最小二乘法失效,使得回归方程中参数变得不稳定,因此对回归系数的估计、预测值的精度产生很大的影响。所以,需要对原因变量之间是否存在较强的共线性关系进行研究,称为共线性诊断。

若个别观测点与多数观测点偏离很远,它们可能会对回归方程的估计以及其他推断产生很大的影响,对这一问题进行监测和分析,称为可疑异常点的诊断。

1.用条件数和方差分量进行共线性诊断

先求出信息矩阵XX的各特征根,条件指数定义为最大特征根λ1与每个特征根比值λi的算术平方根,其公式为:

式中,λ1 >λ2 >…>λm

最大条件指数k,称为矩阵X′X的条件数,其公式为:

条件数大,说明设计矩阵有较强的共线性,结果可能会不稳定,甚至使离开实验点的各估计值或预测值毫无意义。直观上,条件数度量了信息矩阵XX的特征根散布程度,可用来判断多重共线性是否存在及其严重程度。在应用经验中,若0≤k<10,则认为没有多重共线性;10≤k≤30,则认为存在中等程度或较强的多重共线性;k>30,则认为存在严重的多重共线性。

在多重线性回归分析中,原因变量之间是否存在多重共线性还可用条件数所对应的某些原因变量上所承载的方差分量的大小来判断。每个原因变量所包含的信息以其标准化后的方差(其值为1)来度量,该方差被信息矩阵XX的各特征根所分解,每个特征根对应的主成分变量分得的方差即为该原因变量的方差分量。与条件数对应的同时有两个或两个以上原因变量的方差分量超过0.5时,就意味这些原因变量间有一定程度的相关性。

判断原因变量间是否存在共线性时,条件数和方差分量常结合起来使用。

2.用容许度或方差膨胀因子进行共线性诊断

首先对容许度进行说明,对原因变量Xj而言,该统计量等于1-,这里 是把该原因变量当作结果变量对模型中所有其余原因变量作回归时的决定系数,越大,则容许度越小,表明该原因变量与其他原因变量之间的关系越密切。

方差膨胀因子(Variance Inflation Factor,VIF)被定义为容许度的倒数,是诊断多重共线性严重程度的常用指标之一。VIF达到什么数值就可认为原因变量间存在共线性,目前尚无标准的临界值。有人根据经验得出:VIF>5或10时,就有严重的多重共线性存在。

3.用学生化残差进行异常点诊断

对结果变量的预测值影响特别大,甚至容易导致相反结论的观测点,称为强影响点或异常点。可以用于异常点诊断的统计量很多,包括残差、学生化残差、杠杆率和Cook's D统计量等,其中比较便于判断的是学生化残差统计量和Cook's D统计量。当学生化残差统计量的绝对值大于2,或Cook's D统计量大于0.5时,所对应的观测点可能是异常点。此时,需认真核对原始数据。若属抄写或输入数据时人为造成的错误,应当予以纠正;若属非过失误差所致,可将异常点剔除前、后各做出一个最好的回归方程,并对所得到的结果进行分析和讨论。如果有可能,最好在此点上补做实验,以便进一步确认可疑的“异常点”是否确属异常点。

此外,还可以通过绘制残差图来对模型假设的合理性进行考察,残差图的纵坐标可以是残差、标准化残差或学生化残差,横坐标可以是结果变量的估计值Y 或原因变量的值等。在残差图中,如果各个散点随机均匀地散布在直线y=0的上下两侧,说明资料符合模型的假设。如果呈现出某种特别的趋势,就要考虑结果变量与原因变量之间的关系可能非线性、方差不齐或者残差不独立这几种情况之一。

当多重线性回归模型中,存在严重共线性时,应如何解决呢?

一是进行原因变量的筛选。原因变量存在多重共线性时,说明部分原因变量间有较高的相关性。可认为这些原因变量对结果变量的作用部分重叠或存在包含作用。故可采用原因变量筛选的方法选出对结果变量有统计学影响且相互之间独立或相关性较低的一组原因变量。

二是采用有偏估计的分析方法。原因变量间存在多重共线性且专业上认为需要保留在模型中时,不宜使用最小二乘法估计模型。此时,可采用有偏估计,所得回归系数的估计值与参数的偏离不大,且较为稳定,回归系数的标准误比最小二乘法小。此类方法包括岭回归分析、主成分回归分析、偏最小二乘回归分析等。

三是增大样本含量。通过增加样本含量,减少估计量的方差,提高估计精度,可在一定程度上克服多重共线性。

4.3.7 原因变量作用大小的评价

在建立了回归方程之后,不能直接根据各原因变量回归系数绝对值的大小来评价该原因变量对结果变量的作用大小,因为原因变量的单位不尽相同,偏回归系数的大小要受到单位的影响。如果要比较各原因变量的作用大小,应消除原因变量单位的影响,这就需要求标准化的偏回归系数。标准化偏回归系数没有量纲,统计学上常用它的绝对值大小来衡量原因变量对结果变量影响的相对重要性,标准化偏回归系数的绝对值越大,说明该原因变量对结果变量的作用越大。在使用SAS软件的REG过程时,只需要在model语句中加上选项“/stb”就可获得回归方程中全部原因变量的标准化回归系数的估计值。

4.4 分析步骤

4.4.1 基本步骤

第1步,参数估计,即求出模型中参数的估计值。

第2步,假设检验,对模型整体和各参数进行假设检验。本步中,常伴随原因变量筛选,从而得到所含参数与0的差异均有统计学意义的模型。

第3步,对所确定的模型进行共线性诊断。

第4步,进行异常点诊断。

第5步,结合统计学知识和专业知识,对回归方程进行合理的解释,并加以应用。

4.4.2 分析策略

在SAS软件现有过程的基础上,借助其语言进行编程,实现“完全意义上的最优子集法”。具体思路为:将所有原因变量按数目的不同进行全面组合,获得全部可能的组合情形,然后以结果变量对每种组合中的原因变量进行多重线性回归分析(分含截距项和不含截距项两大类);在所有的原因变量组合中,挑选出那些参数与0之间差异都有统计学意义的模型,这是初次选择;然后,从这些参数与0之间差异均有统计学意义的模型中,按照BIC统计量值越小越好的原则,对这些模型进行比较,选择拟合效果最好的那个模型作为最优模型,这是再次选择。该策略的框图见图4-1。

图4-1 多重线性回归分析时最优模型的拟合策略框图

4.4.3 实施步骤

具体的实施步骤如下:

第1步,建立SAS数据集。为减少使用者需要填写的宏参数的数量,这里规定,以y表示结果变量,原因变量名称可按SAS软件命名规则任意设置。

第2步,分别从含截距项和不含截距项两方面入手,对原因变量的所有可能组合进行多重线性回归分析。

第3步,根据对模型的假设检验结果,选择那些参数与0之间差异全部有统计学意义的模型。

第4步,若参数与0之间差异全部有统计学意义的模型只有一个,则该模型即为最优模型;若参数与0之间差异全部有统计学意义的模型不止一个,则选择BIC统计量值最小的那个模型作为最优模型;若不存在参数与0之间差异全部有统计学意义的模型,则给出含与0之间差异无统计学意义的参数个数最少的模型中BIC统计量值最小的那个,此模型称为参考模型,供使用者参考。

以上实施方案中,主要的难点及解决方法简述如下。

第一,所有原因变量全面组合情形的实现问题。可借助SAS软件的REG过程,采用“所谓的最优子集法”进行多重线性回归分析,将原因变量的所有组合情形输出至数据集中。

第二,原因变量各种组合情形下的多重线性回归分析的实现问题。可借助宏变量和宏内do循环的方式,逐一读入数据集中的原因变量组合,然后分含截距项和不含截距项两种情形,调用REG过程进行多重线性回归分析。

第三,选择参数与0之间的差异均有统计学意义的模型问题。可设置一个新变量,用来标识每个参数对应的P值是否小于0.05,然后借助SQL过程,计算不同情形下各模型中P值大于0.05的参数个数。当模型中P值大于0.05的参数个数为0时,则该模型中所包含的参数与0之间的差异都有统计学意义。

第四,最优模型的确定问题。可在第2步中借助ods语句并配合相应的选项,将REG过程拟合模型的BIC统计量值输出至数据集中,然后通过赋值宏变量的方式,将该值与第3步中参数假设检验的结果予以合并。最后,对第3步中所得的模型按照BIC统计量值由小到大进行排序,第一行即为最优模型或参考模型。

实际上,第3步和第4步在具体实施时,可同时进行,即以模型中P值大于0.05的参数个数为第一排序变量,以BIC统计量为第二排序变量,二者均为升序排列,则排序后数据集中的第一个观测,即为最优模型或供使用者参考的模型。

参考文献

[1] 胡良平. Windows SAS 6.12 &8.0实用统计分析教程. 北京:军事医学科学出版社,2001:387-399.

[2] 胡良平. 现代统计学与SAS应用. 北京:军事医学科学出版社,1996:248-264.

[3] 胡良平. 心血管病科研设计与统计分析. 北京:人民军医出版社,2010:145-172.

[4] 胡良平. 面向问题的统计学——(2)多因素设计与线性模型分析. 北京:人民卫生出版社,2012:215-228.