В SAS, как мне назначить макропеременную для номера текущей недели?
Я назначаю макропеременную следующим образом: %let days2=31;
но вместо 31 я хочу, чтобы переменная автоматически была текущим номером недели.
Я пытался использовать week2=week(today(), 'u'), но это возвращает ошибку.
Есть идеи?
Заранее спасибо!!
1 ответ
Решение
У тебя правильная идея. Однако вы пытаетесь использовать функции SAS (week
а также today
) в операторе макроса (%let
). При этом вы должны вызывать каждую функцию SAS, используя %sysfunc
функция макроса:
%let weeks2=%sysfunc(week(%sysfunc(today()), u));
Кроме того, аргументы не нужно заключать в кавычки (u
аргумент в этом случае).