DIR">
SAS宏應(yīng)用2-萬能批量數(shù)據(jù)導(dǎo)入程序(EXCE-TXT-CSV)

SAS宏應(yīng)用2-萬能批量數(shù)據(jù)導(dǎo)入程序(EXCE-TXT-CSV)

ID:44812441

大?。?8.22 KB

頁數(shù):2頁

時間:2019-10-29

SAS宏應(yīng)用2-萬能批量數(shù)據(jù)導(dǎo)入程序(EXCE-TXT-CSV)_第1頁
SAS宏應(yīng)用2-萬能批量數(shù)據(jù)導(dǎo)入程序(EXCE-TXT-CSV)_第2頁
資源描述:

《SAS宏應(yīng)用2-萬能批量數(shù)據(jù)導(dǎo)入程序(EXCE-TXT-CSV)》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在行業(yè)資料-天天文庫。

1、*****讀取一個文件夾下命名無規(guī)則的多個excel文檔*********;%MACROGetFileName(DSNAME=,ROUTE=,TYP=);/*參數(shù)有兩個:路徑,文件類型后綴*/%PUT%STR(----------->DIRNAME=&ROUTE);%PUT%STR(----------->TYP=&TYP);DATAWORK.&DSNAME;RC=FILENAME("DIR","&ROUTE");/*把&DIRNAME值傳給文件引用符“DIR"*/OPENFILE=DOPEN("DIR");/*得到路徑標示符OPENFILE,DO

2、PEN是打開directory的sas內(nèi)置函數(shù)*/IFOPENFILE>0THENDO;/*如果OPENFILE>0表示正確打開路徑*/NUMMEM=DNUM(OPENFILE);/*得到路徑標示符OPENFILE中member的個數(shù)nummem*/DOII=1TONUMMEM;NAME=DREAD(OPENFILE,II);/*用DREAD依次讀取每個文件的名字到NAME*/OUTPUT;/*依次輸出*/END;END;KEEPNAME;/*只保留NAME列*/RUN;PROCSORTdata=WORK.&DSNAME;;/*按照NAME排序*/

3、BYDESCENDINGNAME;%IF&TYP^=ALL%THEN%DO;/*是否過濾特定的文件類型&TYP*/WHEREINDEX(UPCASE(NAME),UPCASE(".&TYP"));/*Y,則通過檢索NAME是否包含&TYP的方式過濾文件類型*/%END;RUN;%MENDGetFileName;%GetFileName(DSNAME=FILE,ROUTE=F:服務(wù)器數(shù)據(jù)挖掘數(shù)據(jù)堂-數(shù)據(jù)挖掘競賽數(shù)據(jù)集Databehavior2012-05-07,TYP=TXT);************讀取同一個excel文檔里面命名無規(guī)

4、則的多個工作表****************;/*去百度原文標題“SAS批量導(dǎo)入EXCEL中數(shù)據(jù)”的文章,可以看到程序解釋*/%letdir=F:SASshumo_miss;%macroReadXls(name);libnameexcellibexcel"&dir.&name";procsqlnoprint;/*創(chuàng)建表sheetname*/createtablesheetnameasselecttranwrd(memname,"''","'")assheetnamefromsashelp.vstabvwwherelibname="EXCEL

5、LIB";selectcount(DISTINCTsheetname)into:number/*提取excel文件中的sheet表的數(shù)量*/fromsheetname;selectDISTINCTsheetnameinto:sheet1-:sheet%left(&number)/*把每個表都指定到相應(yīng)的宏中*/fromsheetname;quit;%put&number;libnameexcellibclear;%doi=1%to&number.;procimportdatafile="&dir.&name"out=sheet&ireplace;s

6、heet="&&sheet&i";getnames=yes;mixed=yes;run;/*表匯總,如果有表格式不統(tǒng)一的話,可以不匯總,要不然數(shù)據(jù)會出問題*/procappendbase=masterdata=sheet&i.force;run;%end;%mendReadXls;%ReadXls(no_hege.xls);*********逐個對數(shù)據(jù)集中的變量進行運算***********************;/*proccontents過程是了解一個數(shù)據(jù)集的屬性,包括這個數(shù)據(jù)集的系統(tǒng)信息,變量屬性等。*/optionsmprintmlogi

7、c;proccontentsdata=sashelp.classnoprintout=class_variable;run;dataclass_variable;setclass_variable;wheretype=1;/*1代表數(shù)值型變量,0代表字符型變量*/keepNAME;run;%macroDsVar;%letdsid=%sysfunc(open(class_variable));%if&dsidgt0%then%do;%letnobs=%sysfunc(attrn(&dsid,nobs));/*計算數(shù)據(jù)集行數(shù),如果需要計算列數(shù)則把nob

8、s換為nvars*/%doi=1%to&nobs;%letrc=%sysfunc(fetchobs(&dsid,&i));

當前文檔最多預(yù)覽五頁,下載文檔查看全文

此文檔下載收益歸作者所有

當前文檔最多預(yù)覽五頁,下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學公式或PPT動畫的文件,查看預(yù)覽時可能會顯示錯亂或異常,文件下載后無此問題,請放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫負責整理代發(fā)布。如果您對本文檔版權(quán)有爭議請及時聯(lián)系客服。
3. 下載前請仔細閱讀文檔內(nèi)容,確認文檔內(nèi)容符合您的需求后進行下載,若出現(xiàn)內(nèi)容與標題不符可向本站投訴處理。
4. 下載文檔時可能由于網(wǎng)絡(luò)波動等原因無法下載或下載錯誤,付費完成后未能成功下載的用戶請聯(lián)系客服處理。