SAS 中是否有与 Oracle NVL 功能等效的功能?
例如,如果我在 SAS 中有一个 where 子句,上面写着:
where myVar > -2;
它不会包含任何具有 myVar = 的行。
如果我想将缺失值视为零,我不得不说:
where myVar > -2 or missing( myVar )
我希望能够做类似的事情:
where NVL( myVar, 0 ) > -2 // or some SAS equivalent
SAS中有这样的东西吗?
SAS 中是否有与 Oracle NVL 功能等效的功能?
例如,如果我在 SAS 中有一个 where 子句,上面写着:
where myVar > -2;
它不会包含任何具有 myVar = 的行。
如果我想将缺失值视为零,我不得不说:
where myVar > -2 or missing( myVar )
我希望能够做类似的事情:
where NVL( myVar, 0 ) > -2 // or some SAS equivalent
SAS中有这样的东西吗?
使用 coalesce 函数是正确的方法。
但是如果你有一个旧版本的 SAS 没有实现合并,你可以使用这个技巧:
where sum(myVar,0) > -2
如果使用 SAS 中的sum 函数进行加法,求和中的任何非缺失数字都将强制结果为非缺失。
因此,使用 sum 函数添加 0 会将缺失值转换为 0,并且非缺失值将保持不变。
y 可以做的一件事是数组 varlistname var1 var2 var3 varn; 如果数组<>。然后输出;
它将输出具有非缺失值的数据集