作为某商品类目公司的市场分析师,你可能需要为二值目标变量(purchase)建立逻辑回归模型,判断某个顾客是否会产生购买。输入数据集存放在 SAS 安装文件的 SAMPSIO.DMEXA1中,该数据集包含 1966 个顾客观测值信息。它包含 31 个区间变量输入和 18 个分类变量输用于构建模型。该逻辑回归模型产生的打分公式应用在新的数据集中,给那些可能产生购买的顾客发送邮件。
创建数据源输入数据
找到系统内置的表 SAMPSIO.DMEXA1
对输入数据集运用层次抽样方法创建训练和验证数据集。训练数据集被用来拟合回归模型,验证数据集用来评估回归模型。层次抽样技术保留购买者和非购买者在训练集和验证集中的初时比率。 首先,在流程图空间加入数据划分节点,打开数据划分节点,在划分选项卡,设置输入数据集的 70%作为训练集,30%作为验证集,测试为 0。
针对类型输入变量 STATECOD,选择层次抽样方法单选按钮。
打开转换节点,创建二值变量 wealth,当 income 大于 40000 同时 homeval 大于 100000,则其值为 1,否则为 0。
从图中可以发现,frequent 的倾斜度很大,极值会影响参数的预测。 右击 frequent,选择 transform,选择方法 log,进行转换。再点击查看变量的分布。
转换前及转换后数据分布
我们根据业务经验衍生变量,(转换变量---交互效应)产生新的变量 recency * recency;然后,选择 recency和 ntitle,点击 保存,产生新变量 recency * ntitle。
创建新的分类变量,对age进行分箱处理,划分为4个年龄组。右击age变量,选择转换变量节点,选择 桶
查看上面转换变量转换的几个变量详细
这些就是我们刚才在变量转换产生的新变量了,后续用于逻辑回归模型
在输入数据源节点,可以在区间变量和分类变量选项卡中,查看观测值的缺失值,在本案例中发现,没有缺失值。在实际中,若存在缺失值,可以加入 replacement 节点,进行处理。在回归模型中不能直接处理缺失值观测值。(下面为查看有无缺少值)
建立逻辑回归预测模型
选择模型适用逐步回归
设置引入”显著性水平"及“保留”显著性水平为0.1
最大步数为100
结果可关注变量相关性,系数
也可查看评分分布
新建输入源节点,角色选择为评分,数据源为SAMPSIO.DMEXA1
拉入评分节点,运行,查看
查看预测结果
拖入sas代码节点
编写sas代码
libname mylib "D:\score_data"; data mylib.score; set EMWS7.Score_SCORE; if P_PURCHASEYes LT 0.60 then delete; run; proc print data = mylib.score; var ACCTNUM P_PURCHASEYes; run;查看本地文件