作者Maninck (我是大天才^o^/)
站內Statistics
標題[程式] SAS 資料處理問題
時間Sun Dec 4 09:52:55 2011
[軟體程式類別]:
SAS
[程式問題]:
資料處理
[軟體熟悉度]:
低(1~3個月)
[問題敘述]:
目標:將資料A處理成資料B
目前我卡在底下程式碼紅色的部份
我想抓A資料裡面ID欄位的資料,然後用SQL新增,但他一直抓不到ID欄位裡面的資料。
還是說這樣想根本是錯的>_<
資料A
ID
01
02
資料B
ID YEAR
01 2001
01 2002
01 2003
02 2001
02 2002
02 2003
[程式範例]:
%MACRO initialdate (id,min ,max);
%DO year = &min %To &max;
proc sql;
insert into b ( id,disk_year) values ("&id","&year");
quit;
%End;
%MEND;
%MACRO abc;
data a ;
set a;
%let temp = id;
%initialdate(&temp,2001,2003);
run;
%MEND;
%abc;
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 118.168.89.77
1F:推 west1996:macro裡面的那個SQL的寫法應該就不合規格了? 12/04 12:05
2F:→ Maninck:他是合規格的,但他寫入的資料不是我想要的XD 12/04 12:23
3F:→ Maninck:寫入後他會變成 id 2001 id 2002 id 2003 12/04 12:24
4F:→ Maninck:但我希望的是01 2001 01 2002 01 2003 = = 12/04 12:24
5F:→ wasabee:%let temp=id; => call symput("temp",id); 12/04 23:50
6F:→ Maninck:感謝~~他寫入了01 2001 01 2002 01 2003 12/05 07:30
7F:→ Maninck:但02 2001 02 2002 03 2003 寫不進去@@ 12/05 07:31
8F:→ Maninck:我再來研究看看哪邊出問題了@@ 12/05 07:31