我正在使用SAS Enterprise指南,并希望将小计算的结果存储在SAS宏变量中:
我的代码如下:
%do quarter = 0 to 3;
%let macro_variable = &quarter. * 3;
%end;
但是,这导致我的代码中出现以下错误:
Statement is not valid, or it is used out of the proper order. Affected code: 0*3.
我在这里做错了什么?这看起来像是一个简单的操作。
答案 0 :(得分:1)
宏函数%eval()允许您使用整数宏变量执行算术运算。
试试这个:
%do quarter = 0 %to 3;
%let macro_variable = %eval(&quarter. *3);
%end;
如果需要计算非整数,则将%eval替换为使用浮点运算的%sysevalf