Sas-программирование: цикл по вызову макроса

Я новичок в 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).

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

редактировать:
У меня есть несколько лет для наблюдения (скажем, с 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) и др.

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

Как это петля? Это всего лишь два вызова макроса.

Tom 13.09.2018 20:03
0
1
41
1

Ответы 1

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

%DO, Iterative Statement

Executes a section of a macro repetitively based on the value of an index variable.

Type: Macro statement

Restriction: Allowed in macro definitions only (my emphasis)

See also: %END Statement

Syntax

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

Другие вопросы по теме