日期作为变量名称

时间:2011-06-02 04:34:52

标签: variables date sas

我想将日期用作变量名称。我知道我需要在前面添加一个角色,并且这不是一种存储数据的好方法(它纯粹是为了报告美学)。我已经尝试了%eval()但无法解决它。

%let var_date = '_'||today();
data date;
    %eval(&var_date) = .;
run;

我希望变量名称为_02JUN2011。谢谢你的帮助。

3 个答案:

答案 0 :(得分:3)

我认为你不想采取这种方法。您应该在PROC REPORT(或任何其他报告PROC)中使用标签,或者动态地转动数据。也许如果你描述了你所拥有的数据和你想要的输出,这里的人们将能够帮助找到合适的解决方案。

为了您的启发,以下代码执行您在帖子中尝试执行的操作:

%let var_date=_%sysfunc(today(),date9.);

data test;
  &var_date=.;
run;

答案 1 :(得分:0)

这就是我正在寻找的。这可以维持吗?

data date1;
    date = put(today(),date9.);
    text = '';
    do i = 1 to 5;
        output;
    end;
run;
proc transpose data = date1 out = date2;
    by i;
    id date;
    var text;
run;

答案 2 :(得分:-1)

你真的想要使用哈希 - 这不是可维护的代码..