[程式] SAS用DO迴圈匯出資料

看板Statistics作者 (桑尼)時間15年前 (2010/10/28 00:18), 編輯推噓1(103)
留言4則, 2人參與, 最新討論串1/2 (看更多)
[軟體程式類別]: SAS [程式問題]: 資料處理 [軟體熟悉度]: 新手(不到1個月) [問題敘述]: 我現在有60個資料檔(60個月份) (.txt) 希望把它分開地一個個匯入SAS,然後做些資料處理(刪除欄位、刪除不符合資料) 然後輸出成新的、較簡潔的資料檔(.txt) 帶我用do迴圈,想說一次起碼跑個12個月份,確失敗了 是我語法下錯嗎?還是我必須手動匯入>處裡>匯出60次 @@ 懇請大大們指導. [程式範例]: 附上我的程式碼,變數我有簡化過,原本input比較多變數 DO n=1 to 12; DM 'OUTPUT;CLEAR;LOG;CLEAR'; DATA sift_1; INFILE 'D:\FDATA\F_2005'+n+'.txt'; INPUT a01 a02 $ a03 $ a04 a05; DATA data_1; SET sift_1(DROP=a02 a05); IF a04=49 THEN OUTPUT; RUN; PROC EXPORT DATA= WORK.DATA_1 OUTFILE= "C:\Users\Sunny\Desktop\2005"+n+".txt" DBMS=DLM REPLACE; RUN; -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 114.36.189.64

10/28 13:01, , 1F
要用MACRO 的%DO
10/28 13:01, 1F

11/05 23:11, , 2F
INFILE 'D:\FDATA\F_2005'+n+'.txt';
11/05 23:11, 2F

11/05 23:14, , 3F
如果改成macro %do的寫法↑ 上面"+n+"還是這樣寫嗎?
11/05 23:14, 3F

11/05 23:16, , 4F
打錯是'+n+'
11/05 23:16, 4F
文章代碼(AID): #1Co52wvc (Statistics)
文章代碼(AID): #1Co52wvc (Statistics)