使用 Enterprise Guide 中的 SAS Base 根据其他列的值创建新列
Create new column depending on values from other column with SAS Base in Enterprise Guide
我需要有关 SAS Base 编程的帮助。
如何创建一个新列(在本例中为列 "BONUS"),其值取决于另一列(列 column_one)的值。
我试过的代码:
if (t1.column_one=110) or (t1.column_one=111)
then put -(t1.BONUS) * 10 * 10;
else put (t1.BONUS) * 10 * 10;
put
语句不会创建新列。它只是将文本打印到日志(或您使用 file
语句指定的任何其他设备)。
'table[dot]column' 符号在 SQL 中使用,在作为数据步骤代码的 if
语句中没有意义。
此外,您说您想要创建一个名为 BONUS
的新列,但在您的示例代码中您乘以而不是给它一个值。我假设该列已经存在。
一个有效的 if 条件将是
if column_one in (110,111) then BONUS=-BONUS*100;
else BONUS=BONUS*100;
我需要有关 SAS Base 编程的帮助。 如何创建一个新列(在本例中为列 "BONUS"),其值取决于另一列(列 column_one)的值。 我试过的代码:
if (t1.column_one=110) or (t1.column_one=111)
then put -(t1.BONUS) * 10 * 10;
else put (t1.BONUS) * 10 * 10;
put
语句不会创建新列。它只是将文本打印到日志(或您使用 file
语句指定的任何其他设备)。
'table[dot]column' 符号在 SQL 中使用,在作为数据步骤代码的 if
语句中没有意义。
此外,您说您想要创建一个名为 BONUS
的新列,但在您的示例代码中您乘以而不是给它一个值。我假设该列已经存在。
一个有效的 if 条件将是
if column_one in (110,111) then BONUS=-BONUS*100;
else BONUS=BONUS*100;