正常情况下,在使用逻辑回归建模时,都需要对好坏样本分层抽样,至少抽到好坏比达到1:10到1:1,比较理想,但很多时候坏样本比较少,数据不平衡,一样要把好样本抽到和坏样本一样少,似乎没有意义。但如不抽会不会影响模型?以下代码使用SAS工具在正态分布随机数据上建立逻辑回归。
/通过修改原文代码,尝试不同好坏比的数据得到结论:
1.截距越小数据越平衡
2.在X是正态分布的情况下,即使数据不平衡,抽样再还原后模型效果可接受/
%let incpt=3.35;/越接近0则越balance [(incpt=0,i=10000), (incpt=3.35,i=10000) ,(incpt=8,i=1000000)]/
data full;
do i=1 to 10000;
x=rannor(12342);
p=1/(1+exp(-(-&incpt.+2x)));
y=ranbin(98435,1,p);
drop i;
output;
end;
run;
data sub;
set full;
if y=1 or (y=0 and ranuni(75302)<1/(1+exp(-(-&incpt.+40.5)))) then output;
run;