2011-06-02 123 views
0

我想使用日期作爲變量名稱。我知道我需要在前面追加一個角色,並且這不是存儲數據的好方法(純粹是爲了報告美學)。我試過%eval(),但無法解決它。日期作爲變量名稱

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

我希望變量名是_02JUN2011。謝謝你的幫助。

回答

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; 
-1

你真的想使用哈希 - 這不是維護的代碼..

+0

你能告訴我的代碼是否可以維護嗎? – Murray 2011-06-03 05:16:39

3

你想要採取這種方式,我不認爲。您應該在PROC REPORT(或任何其他報告PROC)中使用標籤,或者動態地轉發您的數據。也許如果你描述你擁有的數據和你想要的輸出,這裏的人們將能夠幫助你找到合適的解決方案。

爲了您的薰陶不過,下面的代碼做你想在您的文章做什麼:

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

data test; 
    &var_date=.; 
run;
+0

我寧願將其作爲標籤應用,但我無法導出爲ex​​cel並維護標籤。 – Murray 2011-06-03 05:14:55