у меня есть набор данные SAS, которая имеет 20 переменные символы, все из которых являются имена (например, Адам, Боб, Cathy и т.д ..)SAS - Создание переменных из макропеременных
Я хотел бы динамический код для создания переменных называется Adam_ref, Bob_ref и т. д., который будет работать, даже если есть другой набор данных с разными именами (т. е. не нужно вручную определять каждую переменную).
До сих пор мой подход в том, чтобы использовать содержимое Proc, чтобы получить все имена переменных, а затем использовать макрос для создания макропеременные Adam_ref, Bob_ref и т.д ..
Как создать фактические переменные в наборе данных здесь? Нужен ли мне другой подход?
proc contents data=work.names
out=contents noprint;
run;
proc sort data = contents; by varnum; run;
data contents1;
set contents;
Name_Ref = compress(Name||"_Ref");
call symput (NAME, NAME_Ref);
%put _user_;
run;