如何在SAS中进行逻辑回归的似然比检验?

时间:2011-10-12 02:06:40

标签: sas regression

我想使用SAS在logite回归中执行标准似然比检验。我将有一个完整的逻辑模型,包含所有变量,名为A和嵌套逻辑模型B,它是通过从A中删除一个变量得到的。

如果我想测试辍学变量是否显着,我将进行模型A和B的似然比检验。是否有一种简单的方法可以在SAS中执行此测试(基本上是卡方检验)使用PROC?非常感谢您的帮助。

3 个答案:

答案 0 :(得分:3)

如果您想执行完全模型v.s的似然比测试一个变量丢弃模型,您可以使用带有type3选项的GENMOD过程。

脚本:

data d1;
do z = 0 to 2;
do y = 0 to 1;
do x = 0 to 1;
  input n @@;
  output;
end; end; end;
cards;
100 200 300 400
50 100 150 200
50 100 150 200
;
proc genmod data = d1;
  class y z;
  freq n;
  model x = y z / error = bin link = logit type3;
run;

输出:

     LR Statistics For Type 3 Analysis

                          Chi-
Source           DF     Square    Pr > ChiSq

y                 1      16.09        <.0001
z                 2       0.00        1.0000

答案 1 :(得分:1)

我不是逻辑回归方面的专家,但我认为你要完成的工作可以用PROC LOGISTIC完成,使用MODEL语句中的“SELECTION = SCORE”选项。还有其他SELECTION选项,例如STEPWISE,但我认为SCORE匹配最接近你想要的。我会建议阅读它,因为有一些相关的选项(BEST =,START = STOP =),你也可以从中受益。

答案 2 :(得分:0)

我不确定可以专门执行LRT的PROC语句,但是你可以计算嵌套模型的测试。

脚本

proc logistic data = full_model;
model dependent_var = independent_var(s);
ods output GlobalTests = GlobalTests_full;
run;

data _null_;
set GlobalTests_full;
if test = "Likelihood Ratio" then do;
   call symput("ChiSq_full", ChiSq);
   call symput("DF_full", DF);
   end;
run;

proc logistic data = reduced_model;
model dependent_var = independent_var(s);
ods output GlobalTests = GlobalTests_reduced;
run;

data _null_;
set GlobalTests_reduced;
if test = "Likelihood Ratio" then do;
   call symput("ChiSq_reduced", ChiSq);
   call symput("DF_reduced", DF);
   end;
run;

data LRT_result;
LR = &ChiSq_full - &ChiSq_reduced;
DF = &DF_full - &DF_reduced;
p = 1 - probchi(ChiSq,DF);
run;