我是 SAS 新手,想创建一个宏程序,为以后的 PROC GPLOT 创建 y 轴值。
用简单的英语来说,这张图上有两个可能的最小值(和最大值)。轴范围取决于哪个最小值最小。否则,SAS 将不会显示轴范围之外的数据。我不希望 SAS 自动为我创建范围。我想自己定义范围。
因此,这是我对以下过程的尝试:a)计算两个最小值,b)比较两者,c)将两者中的较小者存储在一个新的宏变量中。如果我能让这个工作,一个最大的程序将很容易做到。
%MACRO min;
%LET ymin1 = %SYSEVALF(&minresult - (((&minresult + &maxresult)/2) * .05);
%PUT ymin1 = &ymin1;
%LET ymin2 = %SYSEVALF(&min - (&min * .05));
%PUT ymin2 = &ymin2;
%IF &ymin1 > &ymin2
%THEN %LET ymin = ymin2;
%ELSE %LET ymin = ymin1;
%PUT ymin = &ymin;
%MEND min;
我有一种感觉,我在语法上做错了什么。任何帮助表示赞赏。