proclogistic(logistic回归的SAS实现–无哑变量)

star2017 1年前 ⋅ 6575 阅读

转自 http://blog.sina.com.cn/s/blog_8baaaca501010cj9.html

Logistic回归主要用来处理应变量为分类变量的问题,比如生存和死亡,患病和未患病等。当然研究者关心的问题是哪些因素导致了患病或不患病,哪些是生存和死亡。

Logisticsas语句很简单,其基本语句见下:

PROC LOGISTIC DATA=SAS-data-set < options > ;

   MODEL response = independents < / options >;

   BY variables;

   OUTPUT <OUT=SAS-data-set>

          <keyword=name … keyword=name>

          / <ALPHA=value>;

   WEIGHT variable;

Proc logistic语句默认计算应变量值最小(阴性结果一般赋值为0)的概率,但是常常我们想要得到的是阳性结果的概率,即赋值最大的数值的概率(二分类变量时一般赋值为1),选项“descending”解决了这一问题。

Model语句用于定义应变量和自变量;

实例:假设我们有一个数据,45个观测值,四个变量,包括:

1.       age(年龄,数值型);

2.       vision(视力状况,分类型,1表示好,0表示有问题);

3.       drive(驾车教育,分类型,1表示参加过驾车教育,0表示没有) 

4.       一个分类型输出变量accident(去年是否出过事故,1表示出过事故,0表示没有)。我们的目的就是要考察前三个变量与发生事故的关系。

data logistic ;
   input accident age vision drive ;
datalines ;
1 17 1 1
1 44 0 0
1 48 1 0
1 55 0 0
1 75 1 1
0 35 0 1
0 42 1 1
0 57 0 0
0 28 0 1
0 20 0 1
0 38 1 0
0 45 0 1
0 47 1 1
0 52 0 0
0 55 0 1
1 68 1 0
1 18 1 0
1 68 0 0
1 48 1 1
1 17 0 0
1 70 1 1
1 72 1 0
1 35 0 1
1 19 1 0
1 62 1 0
0 39 1 1
0 40 1 1
0 55 0 0
0 68 0 1
0 25 1 0
0 17 0 0
0 45 0 1
0 44 0 1
0 67 0 0
0 55 0 1
1 61 1 0
1 19 1 0
1 69 0 0
1 23 1 1
1 19 0 0
1 72 1 1
1 74 1 0
1 31 0 1
1 16 1 0
1 61 1 0
;

run;

(1)proc logistic data=logistic descending ;
    model accident=age vision drive; run ;

如果想要在选择适当的自变量筛选方法则使用一下语句:

(2)proc logistic data=logistic descending ;
    model accident=age vision drive/
selection=stepwise sle=0.15 sls=0.15 stbrun ;

Selection用于选择筛选自变量的方法,有backward(向后法)、forward(向前法)、stepwise(逐步法)、score(最优子集法)、none(完全法)五个选项,默认为none

SLE=概率值,入选标准,规定变量入选模型的显著性水平,前进法的默认是0.5,逐步法是0.15

SLS=概率值,剔除标准,指定变量保留在模型的显著水平,后退法默认为0.10,逐步法是0.15 标准化偏回归系数 STB 可用来比较各个自变量作用的大小

 

还可以输出置信区间,语句如下:

(3)proc logistic data=logistic descending ;
    model accident=age vision drive
/selection=stepwise sle=0.15 sls=0.15 stb clrun ;

 

结果:

  The LOGISTIC Procedure

                               Model Information

Data Set                             WORK.LOGISTIC
Response Variable                         
 accident
Number of Response Levels           
 2
Number of Observations                
 45
Model                                             
 binary logit
Optimization Technique                 Fisher’s scoring

 

                             Response Profile                                      
Ordered 
 Value     accident          Total Frequency

                                    25
                
                    20

Probability modeled is accident=1.

(1) 给出了本模型的基本信息,意思大多自明。需要注意的是Response Profile 中,accident=1排在首位。前面我们说过,SASLogistic回归方程log(odds)默认的形式是处理那个变量值比较小的,加上descending选项后,accident=1就排在首位了。

(2)   Forward Selection Procedure

Step 0. Intercept entered:

                          Model Convergence Status

Convergence criterion (GCONV=1E-8) satisfied.

                          Residual Chi-Square Test

Chi-Square              DF                Pr > ChiSq

  10.7057                                       0.0134

 

Step 1 . Effect vision entered:

                              Model Convergence Status

Convergence criterion (GCONV=1E-8) satisfied. 
                             
 Model Fit Statistics                                               
Criterion     Intercept Only     Intercept and Covariates
AIC                  63.827                   59.244 
SC                    65.633                   62.857 
-2 Log L            61.827                 
 55.244

                       Testing Global Null Hypothesis: BETA=0
Test                      
 Chi-Square    DF    Pr > ChiSq
Likelihood Ratio      
 6.5830                 0.0103 
Score                       
 6.4209                 0.0113 
Wald                       
 6.0756                 0.0137

                       Residual Chi-Square Test
Chi-Square           
 DF      Pr > ChiSq
    
 4.9818                      0.0828

Step 2 . Effect drive entered:
                   
 Model Convergence Status
                 Convergence criterion (GCONV=1E-8) satisfied.                      

                         Model Fit Statistics
Criterion      Intercept Only   
  Intercept and Covariates
AIC                  63.827                     56.287 
SC                   
 65.633                     61.707
-2 Log L           
 61.827                     50.287

 

                 Testing Global Null Hypothesis: BETA=0
Test                       
 Chi-Square     DF   Pr > ChiSq
Likelihood Ratio         
 11.5391             0.0031 
Score                          
 10.5976             0.0050 
Wald                           
 8.5949              0.0136

                 Residual Chi-Square Test
Chi-Square     DF   Pr > ChiSq
   
 0.1293            0.7191

NOTE: No (additional) effects met the 0.05 significance level for entry into the model.

(2) 给出了自变量进入模型的次序。先是截距项Step 0了,不管它。Step 1 vision第一个进入模型,附带了很多评估它对因变量预测能力的指标。-2 Log L  Score  用来检测自变量是否显著。-2 Log L 中的L就是Likelihood Ratio,它的p值是0.0103 Score   p值是0.0113 ,都小于0.05,故vision是一个很显著的解释变量。还有,AIC (Akaike Information Criterion)SC (Schwarz Criterion)两个信息量标准用来比较不同的模型,它们数值越小,模型变现就越好,这个接下来我们看step2 drive 变量进入模型后的情况。 我们可以看到模型的表现变好了,因为这是AIC SC 的值变小了,-2 Log L  Score 对应的 p值也更小。

                (3)   Summary of Forward Selection
Step  
  Effect Entered        DF      Number In      Score Chi-Square        Pr > ChiSq
          
 vision                                                   6.4209                        0.0113
          
 drive                                                    4.8680                         0.0274

 (3) 总结了我们模型使用的前向选择方法,包括自变量进入模型的次序,以及每个自变量的卡方值和p值。

                    (4) Analysis of Maximum Likelihood Estimates
Parameter  
 DF   Estimate    Standard Error  Wald Chi-Square   Pr > ChiSq
Intercept    
      0.1110                0.5457           0.0414                 0.8389
vision          
      1.7137                0.7049           5.9113                 0.0150
drive                -1.5000               
 0.7037           4.5440                 0.0330

(4) 给出了模型参数的估计,据此可 以写出改回归方程的形式是log(odds of having an accident)=log(p/(1-p))=0.1110+1.7137*vision-1.5000*drive。我们知道,odds=p/(1- p),p=odds/(1+odds)。假设有个哥们,视力没问题但没有受过驾车教育(vision=0,drive=0),代入方程,有 log(odds)=0.1110,再odds=exp(0.110)=1.1174 p=1.1174/2.1174=0.5277,即我们说这人发生事故的概率为0.5277;又另一个,视力有问题同样没受过驾车教育(vision=1,drive=0),同样的步骤得 log(odds)=1.8249odds=exp(1.8249)=6.2022 p=6.2022/7.2022=0.8612,即这人发生事故的概率为0.8612(视力多重要)。

                 (5) Odds Ratio Estimates
Effect  
     Point Estimate               95% Wald Confidence Limits
vision             5.550                                1.394          
 22.093
drive             0.223                              
 0.056            0.886

 (5) 是对比率Odds Ratio的估计。这里对visionodds ratio的点估是 5.550  ,这个比率由odds(having an accident|vision=1,drive=0)odds(having an accident|vision=0,drive=0)得来,根据(4) 的计算,就是6.2022 /1.1174=5.550 .还有,对vision来说,95% 的置信区间不包括1,说明vision是一个非常显著的解释变量(比率的置信区间不包括1,就跟p值小于0.05一样是一个规则)。

                 (6) Association of Predicted Probabilities and Observed Responses
Percent Concordant             
 67.2               Somers’ D 0.532
Percent Discordant              
 14.0               Gamma 0.655
Percent Tied                       
 18.8                Tau-a 0.269
Pairs                                    
 500                  c 0.766

(6) 这个东西就有些复杂,大概说些预测概率与观测道德因变量间的关联性,我们看到一致性比率Percent Concordant 67.2 %,不一致性比率Percent Discordant 14.0%,说明预测值与观测值在现有水平上有较强的关联性,回归模型有很强的预测能力。

原创文章,作者:xsmile,如若转载,请注明出处:http://www.17bigdata.com/proc-logisticlogistic%e5%9b%9e%e5%bd%92%e7%9a%84sas%e5%ae%9e%e7%8e%b0-%e6%97%a0%e5%93%91%e5%8f%98%e9%87%8f/

更多内容请访问:IT源点

相关文章推荐

全部评论: 0

    我有话说: