看板 Statistics 關於我們 聯絡資訊
※ 引述《kurtasd (阿炫)》之銘言: : [軟體程式類別]: : SAS : [程式問題]: : 資料處理 : [軟體熟悉度]: : 新手 : [問題敘述]: : 目前有01~1000個.txt檔,想要分別匯入sas,目前的想法為建立data01~data1000, : 在set起來,再用sort by時間以整理好檔案,問題就是有沒有辦法一次生成1000個data : 且infile中的txt檔名也可以自動寫好呢? : 想要達成的程式內容為: : data 1; : infile 'c:\1.txt' ; : input a b c; : data 2; : infile 'c:\2.txt'; : input a b c; : . : . : . : . : . : . : data 1000; : infile 'c:\3.txt'; : input a b c; : run; : [程式範例]: : 沒有程式,不過有想過用macro寫,目前想法為... : %marcro var(n); : %do i=1 %to &n; : ------------------ : 這邊我就不知道怎麼寫了 : ------------------ : %end : %mend : 不知道怎麼寫的原因為我打data這個字下去 : 就好像掛不進macro了..... : 麻煩了 各位大大 我不想copy-paste 1000次阿!!!!!!!! : ----------------------------------------------------------------------------- %macro in; %do i=1 %to 1000; data data&i.; infile " c:\&i..txt"; input a b c; run; %end; data all; set %do i=1 %to 1000; data&i. %end; ; run; proc sort data=all out=outall; by 時間變數; run; %mend; -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.112.117.131
kurtasd:感謝west大大,馬上來試試! 02/07 22:06
kurtasd:再問一下,為什麼第三行要打data&i.而不是data&i就好了呢? 02/07 22:21
west1996:其實在第三行兩種寫法都行,第四行的話就一定要兩個. 02/08 00:02
kurtasd:謝謝~ 02/08 15:14