search
尋找貓咪~QQ 地點 桃園市桃園區 Taoyuan , Taoyuan

多個Excel文件處理——xls2dta命令

復旦大數據

ID:FuDanBigData

今天介紹給大家一個更簡便的命令xls2dta,本命令需從ssc下載安裝,在處理多個excel文件上具有顯著優勢,不僅可以讀取保存,還可以進行合併等其他操作。

比如,爬蟲君現在有4excel文件放在E:/桌面/mark文件夾中。

每個文件都有3張表單,分別有idmark兩個變數。

爬蟲君想要將mark文件夾中所有excel文件中的第1和第3張表單中的數據轉換成dta格式,併合並生成mark.dta文件。

使用命令:

xls2dta,save(E:\桌面) sheet(1 3):import excel using E:\桌面\mark,firstrow

xls2dta,save(E:\桌面\mark.dta, replace):append

save中參數表示新生成的文件所在路徑,如果不使用該選項則默認為當前工作路徑;

E:\桌面\mark則是所要讀取的文件的路徑,命令會讀取該路徑中的所有xlsxlsx文件,如果要讀取單個Excel文件則需加上擴展名。

第二行命令append默認使用第一行命令所轉換生成的文件進行合併。

也可以不生成中間文件直接合併Excel文件中的數據,通過using來自定義所要使用的數據來源。使用命令:

xls2dta, sheet(1 3) save(E:\桌面\mark.dta, replace) importopts(firstrow):append using E:\桌面\mark

這樣就直接讀取併合並了Excel文件中指定的數據。

通過填寫importopts選項可以在細節上完善Excel文件的讀取,本次操作填入的firstrow表示將第一行變數記作變數名;

using後接路徑,則會對該路徑下所有的xlsxlsx文件文件進行操作。如果要對單個文件進行操作,則需加上擴展名。

比如讀取mark2.xlsx文件中所有表單的數據併合並,生成文件mark2.dta,使用命令:

xls2dta, save(E:\桌面\mark2.dta,replace) allsheets importopts(firstrow): append using E:\桌面\mark\mark2.xlsx

同樣的,append命令還可以換成joinbymergeexcel文件進行合併操作。

除合併數據之外,xls2dta還可以對新生成的文件進行其他批量操作。語法為

xls2dta : xeqcommand

比如,對於新生成的文件,爬蟲君想要把含4位數的變數id拆成兩個分別含2位數的變數,使用命令:

xls2dta,save(E:\桌面) allsheets:import excel using E:\桌面\mark,firstrow

xls2dta : xeq nsplit id,digits(2 2)

如上圖所示,變數拆分成功。

只需在xls2dta : xeq后加上命令即可對轉換生成的文件進行批量操作,而不加usingsave,本命令會自行讀取保存。

回復下列數字即可獲得相應乾貨下載

1:一百多篇大數據文檔下載!

2超全數據分析資料免費下載!(包括SQL,R語言,SPSS,SAS,python,數據分析和數據挖掘)

3清華大學數據科學院講座內容集錦免費下載!

4Python超全資料分享!



熱門推薦

本文由 yidianzixun 提供 原文連結

寵物協尋 相信 終究能找到回家的路
寫了7763篇文章,獲得2次喜歡
留言回覆
回覆
精彩推薦