行和列无法在宏sas中确定

时间:2018-11-30 09:23:50

标签: macros sas

%macro pesee(nom, imprec, poids, nb_simul);
data &nom.;
do i=1 to &nb_simul.;
PoidsR= RAND('UNIForm', &poids.*(1- &imprec.), &poids.*(1+ &imprec.));
output;
end;
run;
%mend;
%pesee(Sucre, 0.1,200,3);

你好, 我正在启动宏仿真,但始终会出现以下错误Line and column cannot be determined

1 个答案:

答案 0 :(得分:0)

很可能您没有SAS 9.4(或者甚至没有9.4的旧版本)。我相信SAS 9.4 TS1M5已为UNIFORM的RAND发行版添加了其他选项(尽管我找不到在特定维护版本中添加了该选项的证明,并且可能在生产前已经可以了,但并非如此)在9.3 documentation中,他们在9.4 TS1M5中对RAND进行了很多更改);在此之前,UNIFORM不可能有任何论点。

您最有可能必须这样做:

%macro pesee(nom, imprec, poids, nb_simul);
data &nom.;
do i=1 to &nb_simul.;
PoidsBase= &poids. + (2*&imprec.)*RAND('UNIForm') - &imprec.;
output;
end;
run;
%mend;
%pesee(Sucre, 0.1,200,3);

当添加call streaminit行以获取固定种子(我强烈建议推荐)时,产生的结果与上述结果相同。