在 SAS 中,如何将宏变量分配给当前周数?
In SAS how do i assign a macro variable to the current week number?
我正在这样分配一个宏变量:
%let weeks2=31 ;
但我希望变量自动成为当前周数,而不是 31。
我试过使用 weeks2=week(today(), 'u') 但这 returns 是一个错误。
有什么想法吗?
提前致谢!!
你的想法是正确的。但是,您正试图在宏语句 (%let
) 中使用 SAS 函数(week
和 today
)。这样做时,您必须使用 %sysfunc
宏函数调用 each SAS 函数:
%let weeks2=%sysfunc(week(%sysfunc(today()), u));
此外,参数不需要在宏函数中引用(在本例中为 u
参数)。
我正在这样分配一个宏变量: %let weeks2=31 ;
但我希望变量自动成为当前周数,而不是 31。
我试过使用 weeks2=week(today(), 'u') 但这 returns 是一个错误。
有什么想法吗?
提前致谢!!
你的想法是正确的。但是,您正试图在宏语句 (%let
) 中使用 SAS 函数(week
和 today
)。这样做时,您必须使用 %sysfunc
宏函数调用 each SAS 函数:
%let weeks2=%sysfunc(week(%sysfunc(today()), u));
此外,参数不需要在宏函数中引用(在本例中为 u
参数)。