我想从SAS中的分类逻辑模型中获得边际效应。 在连续因变量的情况下,感谢SAS手册(22604),我理解如何在一定程度上计算边际效应。
然而,该SAS手册仅处理连续预测变量对二元或分类因变量的边际影响。因此,我不确定在二进制虚拟预测器的情况下是否可以应用手动方法。
从概念上讲,我可以解释虚拟预测因子对因变量的边际效应,但从技术上讲,我不确定它是否正确计算。
当然,使用奇数比率可能更好。我同意,但我想使用和边际效应。
感谢阅读。
data crops;
input Crop $1-10 x1 rain $ ;
datalines;
Corn 16 1
Corn 15 0
Corn 16 0
Corn 18 0
Corn 15 1
Corn 15 1
Corn 12 1
Soybeans 20 0
Soybeans 24 0
Soybeans 21 1
Soybeans 27 1
Soybeans 12 1
Soybeans 22 1
Cotton 31 0
Cotton 29 0
Cotton 34 0
Cotton 26 1
Cotton 53 0
Cotton 34 1
Sugarbeets 22 1
Sugarbeets 25 0
Sugarbeets 34 1
Sugarbeets 54 1
Sugarbeets 25 1
Sugarbeets 26 1
Clover 12 0
Clover 24 0
Clover 87 0
Clover 51 0
Clover 96 0
Clover 31 1
Clover 56 1
Clover 32 0
Clover 36 0
Clover 53 1
Clover 32 1
;
proc logistic data=crops;
class rain(ref='0');
model crop = rain / link=glogit;
output out=preds predprobs=individual;
ods output ParameterEstimates=betas;
run;
proc transpose data=betas out=rowbetas;
var estimate;
run;
data margeff;
if _n_=1 then set rowbetas;
set preds;
SumBetaPred=col5*IP_Clover + col6*IP_Corn + col7*IP_Cotton + col8*IP_Soybeans;
MEClover=IP_Clover*(col5-SumBetaPred);
MECorn=IP_Corn*(col6-SumBetaPred);
MECotton=IP_Cotton*(col7-SumBetaPred);
MESoybeans=IP_Soybeans*(col8-SumBetaPred);
MESugarbeets=IP_Sugarbeets*(-SumBetaPred);
run;
proc sort nodupkey;
by rain;
run;
proc print;
id rain;
var me:;
run;