программирование sas: цикл по вызову макроса - PullRequest
0 голосов
/ 13 сентября 2018

Я новичок в sas и имею следующий вызов макроса:
% test (input1 = & lib._2015, input2 = & lib.base, out = out_data_2016)

Теперь я хочу цикл, которыйна следующем шаге output_data_2016 используются как input1 и создают новую переменную out out_data_2017.Затем вызов должен выглядеть следующим образом:
% test (input1 = out_data_2016, input2 = & lib.base, out_data_2017).

Заранее спасибо!

edit:
У меня есть несколькогоды, чтобы наблюдать (скажем, 2010 до 2018 года).Тогда мне нужно 9 макро вызовов:

%test (input1=&lib._2014, input2=&lib.base, out=out_data_2015) %test (input1=&lib._2015, input2=&lib.base, out=out_data_2016) %test (input1=out_data_2016, input2=&lib.base, out_data_2017) и т. Д.

Я надеюсь создать цикл, так что мне нужен только один шаг, но я не знаю, почему ...

1 Ответ

0 голосов
/ 13 сентября 2018

Пожалуйста, прочитайте документацию SAS, напишите код и отправьте новый вопрос о том, что вы пытались.

% DO, повторяющееся утверждение

Повторно выполняет раздел макроса на основе значения индексной переменной.

Тип: оператор макроса

Ограничение: Допускается только в определениях макросов (мой акцент)

См. Также: Оператор% END

Синтаксис

%DO <em>macro-variable</em>=<em>start</em> %TO <em>stop</em> <%BY <em>increment</em>>; <em>text and macro language statements</em> %END;

...