我需要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;
答案 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;