我想用SAS進行logitic迴歸中的標準似然比檢驗。我將有一個完整的邏輯模型,其中包含所有變量,名爲A和嵌套邏輯模型B,它是通過從A中刪除一個變量而得出的。如何執行SAS中邏輯迴歸的似然比檢驗?
如果我想測試該退出變量是否顯着,我將執行模型A和模型B的似然比檢驗。是否有一種簡單的方法在SAS中使用PROC執行此測試(本質上是卡方檢驗)?非常感謝你的幫助。
我想用SAS進行logitic迴歸中的標準似然比檢驗。我將有一個完整的邏輯模型,其中包含所有變量,名爲A和嵌套邏輯模型B,它是通過從A中刪除一個變量而得出的。如何執行SAS中邏輯迴歸的似然比檢驗?
如果我想測試該退出變量是否顯着,我將執行模型A和模型B的似然比檢驗。是否有一種簡單的方法在SAS中使用PROC執行此測試(本質上是卡方檢驗)?非常感謝你的幫助。
如果您想執行完整模型v.s.的似然比測試,一個變量刪除模型,您可以將GENMOD過程與type3選項一起使用。
腳本:
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
我並不是邏輯迴歸方面的專家,但我認爲您可以使用PROC LOGISTIC在MODEL語句中使用「SELECTION = SCORE」選項完成您想要完成的任務。還有其他SELECTION選項可供選擇,例如STEPWISE,但我認爲SCORE匹配距離您正在尋找的最近。我建議你閱讀它,因爲有一些相關的選項(BEST =,START = STOP =),你也可以從中受益。
我不知道這一點,可以具體執行LRT,但你可以計算嵌套模型測試一個PROC語句。
腳本
proc ligistic 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 ligistic 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;
選擇= SCORE實際上是最佳子集自動特徵選擇配置。這不是我正在尋找的。我想知道SAS中是否有一些PROC可以幫助我執行兩個現有模型(一個嵌套另一個)的似然比測試。但非常感謝你的貢獻。欣賞它。 – Steve