如何用另一个值,字符和数字替换变量值?

时间:2016-02-04 21:09:04

标签: sas

我试图根据具体情况用字符或数字值替换特定的变量值。

我的代码更改为" no"到" NULL"如下:

DATA tp_01_pa_remove_no;
  SET tp_01_pa_renamed;
  IF variable_name="no" THEN "NULL";
RUN; 

我还想替换其他值:

DATA tp_01_pa_remove_nulls;
SET tp_01_pa_renamed;
IF PAFB_OTHERACTIV_4A1="no" OR "none" OR "None" OR "N/A" THEN PAFB_OTHERACTIV_4A1="NULL";

RUN;

2 个答案:

答案 0 :(得分:0)

要重命名其值正好为do的变量,您可以执行以下操作:

no

这假设data tp_01_pa_remove_no; set tp_01_pa_renamed; if(variable_Name = "no") then variable_name = "NULL"; run; 的长度至少为4。

答案 1 :(得分:0)

作为替代方案,如果您习惯使用Excel,则会有IFN和IFC,这些都是excel风格的语句。第一个论点是' if'条件,第二个返回'如果为真,则返回第三个'如果为false',则可选的第四个是'如果丢失/ null' (通常不会发生)。

data want;
  set have;
  variable_name = ifc(variable_name='no','NULL',variable_name);
run;

IFN当然会返回一个数字。 (顺便说一下,这两种说法都不关心第一个参数的类型。)