我正在用下面的SAS代碼創建一個宏變量。它存儲數據名稱列表,我需要在特定變量中替換某些值。 proc sql noprint;
select distinct data_name
into :data_repl separated by ' '
from TP_attribute_matching
where Country="&Country_Name" and Replace_this
我正在使用%SYMEXIST來檢查宏變量是否存在,然後根據結果繼續或跳過。這聽起來很簡單,但SAS迄今爲止嘗試的所有方法都出現錯誤。 & num_tables是根據特定條件從數據集創建的宏。 proc sql noprint;
select distinct data_name into :num_tables separated by ' '
from TP_data
where trim
因爲我真的是SAS新手,所以我無法找到一個起點。 我有一個數據集,看起來像這樣: customer id number volume
1 ab 10 5
1 cd 7 3
2 xy 15 2
2 ab 3 50
我想創建一個新的數據集,其中我需要爲每個distint ID的新變量。 在id出現的行中,數量和體積應在新變量中相乘。新數據集應如下所示: customer i
我必須創建EVENT1-EVENT20,但是我正在做mannualy逐一添加,它的痛苦添加所有事件和代碼看起來很醜,有沒有什麼辦法可以簡單地做,如添加宏? DATA Z3_ALL91;
SET Z3_ALL8;
EVENT1=INPUT('.',$CHAR10.);
EVENT2=INPUT('.',$CHAR10.);
EVENT3=INPUT('.',$CHAR10.);
EVEN
我需要在宏內部的變量列表上進行循環。 通過以下方式創建的列表(我已經開始,我希望與MO變量,NU或KA的名稱): proc sql noprint;
select name into :varsi separated by ' '
from dictionary.columns
where libname eq 'LABIMP' and memname eq 'MUE