Можете ли вы помочь мне в этой ситуации? Я попытался передать несколько заголовков в массиве для макроса SAS для создания графиков. Я довольно новичок в программировании SAS, и я не могу понять, как это произошло. Большое спасибо за вашу помощь.Не удалось передать параметр SAS Macro
/*Create Trend Chart*/
%macro trendChart(dataFile,xVariable,yVariable,group);
proc gplot data=&dataFile;
plot &yVariable*&xVariable=&group;
symbol1 v=star c=blue;
title "Time Series Plot";
run;
quit;
%mend trendChart;
data _null_;
/*Create Trend Chart*/
Array variableList[*] Res_Rd1 OW_perp_Rd2;
do i=1 to dim(variableList);
var_name=vname(variableList[i]);
put var_name;
%trendChart(TDMR.Children,M_Date,var_name,t_);
end;
run;
Возможный дубликат [Динамически называют макрос из с.а.с шага данных] (http://stackoverflow.com/questions/25545892/dynamically-call-macro-from-sas-data-step) – Reeza
Посмотрите на DOSUBL или CALL EXECUTE для вызова макроса с шага данных. Я связан с аналогичным решением, в документах также есть примеры. – Reeza