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

如何在SAS Enterprise Miner中将序数字符串转换为对应数值

SAS Enterprise Miner字符串类别转数值操作方案

方法1:使用Transform Variables节点(无代码操作,适配常规需求)

  • 将你的源数据集导入SAS EM项目后,拖拽Transform Variables节点与数据源节点相连
  • 双击打开节点配置面板,选中Gender、Size、Color三个字符类型字段,在变量属性栏将*转换方法(Method)*设置为「Recode」
  • 点击「Recode」按钮进入映射配置界面,按照你的业务需求给每个字符类别分配对应的数值:
    • 可直接手动录入每个取值的映射结果,也可以批量设置排序规则自动生成编码
    • 如果同个类别存在大小写差异(比如示例中的small和Small),可以先统一字段大小写再做映射,避免出现重复类别
  • 配置完成后保存并运行节点,输出的数据集就是数值化后的结果,若需要保留原始字符字段,可在配置页勾选「保留原变量」选项。

方法2:使用SAS Code节点(灵活适配自定义规则)

如果你的映射规则比较复杂,或者需要批量处理多字段,可以用SAS代码节点实现:

  • 拖拽SAS Code节点连接到数据源节点,打开代码编辑面板,输入以下逻辑代码:
/* 读取输入数据集 */
data em_out;
    set &em_import;
    /* 映射Gender字段 */
    if Gender = 'Male' then Gender_num = 0;
    else if Gender = 'Female' then Gender_num = 1;

    /* 映射Size字段,统一处理大小写 */
    length temp_size $10;
    temp_size = upcase(Size);
    if temp_size = 'SMALL' then Size_num = 0;
    else if temp_size = 'LARGE' then Size_num = 1;
    else if temp_size = 'MEDIUM' then Size_num = 2;
    drop temp_size Size Gender Color;

    /* 映射Color字段 */
    if Color = 'Red' then Color_num = 0;
    else if Color = 'Blue' then Color_num = 1;
    else if Color = 'Black' then Color_num = 2;

    /* 重命名为原字段名 */
    rename Gender_num=Gender Size_num=Size Color_num=Color;
run;
  • 运行节点即可得到转换完成的数据集,代码中的映射值可以根据你的实际需求调整。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.25 12:54:02