根据“企业指南”中SAS Base的其他列的值创建新列

时间:2017-10-17 10:30:35

标签: database sas enterprise-guide

我需要SAS Base编程方面的帮助。 如何使用取决于另一列(列column_one)的值创建新列(在本例中为列" BONUS")。 代码I尝试过:

if (t1.column_one=110) or (t1.column_one=111) 
    then put -(t1.BONUS) * 10 * 10;
    else put (t1.BONUS) * 10 * 10;

1 个答案:

答案 0 :(得分:1)

put语句不会创建新列。它只是将文本打印到日志(或您使用file语句指定的任何其他设备)。

'table [dot] column'表示法在SQL中使用,在if语句中没有意义,它是数据步骤代码。

此外,您说您要创建一个名为BONUS的新列,但在您的示例代码中,您将乘以而不是为其赋值。我将假设该列已存在。

有效的if条件将是

if column_one in (110,111) then BONUS=-BONUS*100;
else BONUS=BONUS*100;
相关问题