Re: [問題] SAS設置dummy variable
※ 引述《ivan1215 (米糕)》之銘言:
: 各位前輩好
: 我現在遇到設置dummy variable 的問題
: 因為我的data 內總共有一百多萬筆資料 實際天數約2000天 公司有八百多家
: 我現在要依照日期來設至dummy variable
: if date=20010102 then d1=1 ;else d1=0;
: if date=20010103 then d2=1 ;else d2=0;
: ......
: ......
: ......
: if date=20091231 then d1989=1 ;else d1989=0;
: 不知道有沒有辦法將這將近兩千條式子縮短
: 希望各位前輩可以幫幫忙 感謝<(_ _)>
比較大的問題在於日期非連續的數字
/*先做另一個表,把日期改成1234....排序*/
data a1;
set yourdata;
by date;
if _n_=1 then temp=0;
retain temp;
if first.date then temp=temp+1;
run;
/* 接下來就可以用迴圈處理 */
%macro aa;
data a2;
set a1;
%do i=1 %to 1989 ;
if temp=&i then d&i=1 ; else d&i=0;
%end;
drop temp;
run;
%mend;
%aa;
當然這樣寫還不夠完美,畢竟 d1989 這部份要自己看總共幾天手動給定
不過至少應該可以省掉很多時間了
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 218.172.224.179
推
12/09 23:44, , 1F
12/09 23:44, 1F
推
12/10 00:09, , 2F
12/10 00:09, 2F
推
12/10 00:11, , 3F
12/10 00:11, 3F
→
12/10 00:12, , 4F
12/10 00:12, 4F
→
12/10 00:12, , 5F
12/10 00:12, 5F
→
12/10 00:21, , 6F
12/10 00:21, 6F
→
12/10 00:22, , 7F
12/10 00:22, 7F
→
12/10 00:23, , 8F
12/10 00:23, 8F
→
12/10 00:25, , 9F
12/10 00:25, 9F
推
12/10 00:42, , 10F
12/10 00:42, 10F
→
12/10 00:44, , 11F
12/10 00:44, 11F
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 2 之 3 篇):