為什么我的宏變量不能解決?我有一個宏變量,&myvar但是當我嘗試將它放入數據步變量時它不會解析。為什么不呢,我該怎么做才能解決這個問題呢?%let myvar=Hello, world;data _null_;
x='&myvar.';
put x=;run;
2 回答
慕的地8271018
TA貢獻1796條經驗 獲得超4個贊
SAS中的宏變量在單引號中時無法解析'&myvar'。它們需要用雙引號,"&myvar"以便妥善解決。
如果你需要單引號和已解析的宏變量,你有幾個選項,但最簡單的是:
%str(%'&myvar.%')
該%'內%str將放置在文本字符串中的單引號字符(或撇號)本身,而不會導致其被引用。
data _null_; x="%str(%'&myvar.%')"; put x=;run;
要么
%let myvar2 = %str(%'&myvar.%');
陪伴而非守候
TA貢獻1757條經驗 獲得超8個贊
在某些情況下,創建一個比其他問題復雜度更低的“虛擬”問題更容易,但仍會回答經常出現的問題,然后將其用作復制品?!疤摂M”問題在技術上應該仍然是一個好問題(因為這是),但當然不是要求查找信息的目的:)
添加回答
舉報
0/150
提交
取消
