You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在SAS Enterprise Miner中将profit目标变量转换为二元分类变量(负利润为0、正利润为1)

刚好我之前在SAS Enterprise Miner里处理过一模一样的需求,给你两个实用的解决方案,亲测有效:

解决方案1:用Transform Variables可视化节点(推荐新手)

这是最直观的可视化操作方式,不用写代码就能完成转换:

  • 从左侧节点面板拖拽Transform Variables节点到你的流程图,把它和数据源节点连接起来
  • 双击打开节点设置,在变量列表里找到profit变量,选中它
  • 切换到「Recode」(重新编码)标签页,设置自定义编码规则:
    • 添加第一条规则:当profit < 0时,映射为0
    • 添加第二条规则:当profit > 0时,映射为1
    • (可选)如果你的数据里存在profit=0的情况,可以单独设置规则(比如映射为缺失值或自定义类别)
  • 点击「应用」保存规则,然后运行节点,就能得到转换后的二元分类变量了
解决方案2:用SAS Code节点(灵活可控)

如果可视化节点的规则满足不了你的特殊需求,直接写SAS代码会更灵活:

  • 拖拽SAS Code节点到流程图,连接到数据源节点
  • 双击打开节点,在代码编辑框里输入以下代码:
data transformed_profit;
    set &EM_IMPORT_DATA.; /* &EM_IMPORT_DATA.是Enterprise Miner的内置宏变量,代表输入数据集 */
    /* 根据profit值生成二元变量 */
    if profit < 0 then binary_profit = 0;
    else if profit > 0 then binary_profit = 1;
    /* 可选:处理profit=0的场景,比如设为缺失值 */
    /* else binary_profit = .; */
run;
  • 点击运行节点,新生成的binary_profit就是你需要的二元分类变量
额外注意事项
  • 确认profit变量是数值型,如果是字符型需要先转换成数值(可以用Transform Variables节点的类型转换功能)
  • 如果数据里有profit的缺失值,建议先用Impute节点填充后再进行转换,避免转换结果出现异常
  • 转换完成后,可以用Explore节点查看新变量的分布,验证转换是否符合预期

内容的提问来源于stack exchange,提问作者ahad lone

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.30 10:27:45