Макросы SAS для импорта и применения макроса из текстового файла в наборе данных CSV - PullRequest
0 голосов
/ 26 апреля 2018

У меня есть текстовый файл «Определение макроса», в котором есть два определения макроса SAS. Я хотел бы импортировать их и применить к набору данных HTWT.csv. Этот набор данных имеет 20 наблюдений и 6 переменных ID, пол, возраст, рост, вес, год. Все числовые, кроме пола переменной. У меня есть код ниже, чтобы импортировать и применять макросы из TXT-файла в CSV-файл. Я получаю сообщение об ошибке при запуске этого кода, как показано ниже.

outcsvv - имя набора данных HTWT, импортированного в SAS.

%include "C:\Users\komal\Desktop\Advanced SAS\Macro definition.txt";
%contents_of(outcsvv)
%print_data(outcsvv)
Warning:Apparent Invocation of macro "contents_of" not resolved
Error: Unable to complete processing of INCLUDE. Expected a filename or fileref
Expected a statement keyword: found "("

Вторая ошибка, которую я получаю, связана, вероятно, с определением (ями) макросов из текстового файла:

%macro contents_of(name);
proc contents data=&name;
run;
%mend;


%macro print_data(name);
proc print data=&name;
run;
%mend;

Пожалуйста, дайте мне знать ваши советы о том, как ее решить. Спасибо за ваше время.

1 Ответ

0 голосов
/ 05 мая 2018

Вы можете настроить свой собственный макрос Библиотека автоматического вызова .Просто разделите ваш файл;сохранить один макрос на файл. more .

или вы можете добавить этот код в начало вашей программы:

options insert=(sasautos="/C:\Users\komal\Desktop\Advanced SAS") ;

это будет искать макросы в этом каталоге.

...