[程式] SAS資料輸出

看板Statistics作者 (Hello! Project)時間10年前 (2015/07/15 17:18), 編輯推噓1(105)
留言6則, 4人參與, 最新討論串1/2 (看更多)
[軟體程式類別]: SAS [程式問題]: 資料處理 [軟體熟悉度]: 中(3個月到1年) [問題敘述]: 我的資料大概是長這樣(股票的) 代號 XXX YYY 9901 XXX YYY 1101 XXX YYY 2202 XXX YYY 3333 XXX YYY 4444 XXX YYY 5577 XXX YYY ........ 想請問有沒有方法,用DO迴圈從1101讀到9999 (其中會有些代號是空的,不存在) 跑到代號是1101的,就全都輸出成1101的SAS資料檔, 跑到空代號的時候就跳過,不要輸出檔案。 LIBNAME A 'C:\TEJ\01'; LIBNAME B 'C:\TEJ\02'; %MACRO test; %DO s=1101 %TO 9999 ; DATA B.b&s ; SET SAS.aaa ; IF stock ^= &s THEN DELETE ; RUN; %END; %MEND; %test 我現在是用類似上面這樣,讀1101時,會匯出一個SAS檔到B資料夾裡面 可是讀到空的股票代號時,也會產生出空的SAS檔 請問想要避免空檔的產生應該要怎麼辦呢? 謝謝大家 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 36.226.131.29 ※ 文章網址: https://www.ptt.cc/bbs/Statistics/M.1436951896.A.C79.html

07/15 21:28, , 1F
一開始不要把空的代號抓進去要開始切割的檔案不就好了.
07/15 21:28, 1F

07/16 00:47, , 2F
您是說%DO s=1101 %TO 9999這邊嗎?
07/16 00:47, 2F

07/16 07:49, , 3F
爬文吧 有人問過
07/16 07:49, 3F

07/17 23:49, , 4F
aaa檔有多大? 你的code把它讀了近8000次。但目的是切檔
07/17 23:49, 4F

07/17 23:57, , 5F
可參考這篇文章,才兩頁而已,先照做試式看能不能解決
07/17 23:57, 5F
文章代碼(AID): #1LfYLOnv (Statistics)
文章代碼(AID): #1LfYLOnv (Statistics)