首先 SAS 可以使用手動來導入,導出
但是這樣對於每次操作都需要來手動操作,所以就使用了 SAS 中的宏來編寫代碼
需求:
1. 首先是給定excel 的文件路徑,來生成一個數據集
2. 然后是對數據集中進行數據的處理
3. 最后是對處理好的數據集導出為一個excel 格式的文件
例子:
1 /* 導入excel的數據 */ 2 %macro import_excel(filepath, out); 3 proc import datafile=&filepath out=&out dbms=excel replace; 4 run; 5 %mend import-excel; 6 7 /* 導出excel的數據 */ 8 %macro export_excel(dataset, filepath); 9 proc export data=&dataset file=&filepath dbms=excel replace; 10 run; 11 %mend export_excel(); 12 13 /* 調用導入宏 */ 14 %import_excel('C:\Users\ZEK\Desktop\test.xlsx', a); 15 run; 16 17 /* 處理數據集 */ 18 data process; 19 set a; 20 if age>14 then desc='已滿14歲'; 21 else desc='未滿14歲'; 22 run; 23 24 /* 調用導出宏 */ 25 %export_excel(process, 'C:\Users\ZEK\Desktop\temp.xlsx'); 26 run;
結果:
在日志窗口中會輸出這樣的一個日志.

注意:
在編寫代碼的時候,最需要注意的是,導入和導出的語句是不一樣的
導入為:
proc import datafile=路徑名稱 out=數據集名稱 dbms=excel replace;
導出為:
proc export data=數據集名稱 file=路徑名稱 dbms=excel replace;
千萬要注意!!!!!!!!!!!!!!!!!!!!!!!
