天天看點

《深入解析sas:資料處理、分析優化與商業應用》一3.6 将資料集寫出到外部檔案

本節書摘來自華章出版社《深入解析sas:資料處理、分析優化與商業應用》一書中的第3章,第3.6節,作者 夏坤莊 徐唯 潘紅蓮 林建偉,更多章節内容可以通路雲栖社群“華章計算機”公衆号檢視

除了可以在sas環境中對sas資料集進行加工處理外,sas資料集的資料還可以導出到外部檔案中,以便在未安裝sas軟體的環境中使用,sas提供了export過程來實作此功能。export過程可以将sas資料集按照指定格式寫入外部文本檔案。當sas安裝中存在sas/access to pc files許可時,export過程還可以讀取寫入pc檔案中的外部資料,包括microsoft access資料庫檔案、miscrosft excel工作簿、lotus 1-2-3檔案、dbase檔案、jmp檔案、spss檔案、stata檔案和paradox等。

本節介紹如何使用export過程将sas資料集導入常用的外部檔案,例如帶分隔符的文本檔案和microsoft excel工作簿。同時,sas還提供了export向導(選擇菜單“檔案”“導出資料”)通過圖形界面的方式将sas資料集中的資料導出到上述類型的檔案中。導出過程所生成的sas語句也可以儲存起來供以後使用。

export過程的基本形式如下:

其中:

data=指定要導出的sas資料集。其後可添加資料集選項。

outfile=指定要将sas資料集中的資料寫入的檔案,可以是實體路徑或檔案引用;outtable=指定将sas資料集的内容導入microsoft access資料庫時的表名。

dbms指定所導出的資料類型。sas支援多種資料類型,例如dlm、csv、tab、access、xlsx、xls、excel、jmp、dta、spass等。

其中,dlm、csv、tab表示導出的資料檔案是分别由指定字元(預設為空格)、逗号和制表符分隔的文本檔案;access表示為使用libname語句的miscrosoft access 表;xlsx表示導出的資料檔案為micorsoft excel 2007或2010的工作簿。可參考sas幫助文檔關于導入資料類型和各類型的詳細資訊。

在export過程中還可以指定參數replace,表示當該outfile=指定的檔案存在時覆寫該檔案,如果不指定replace,則export過程不會覆寫已經存在的檔案。

1.?導出到帶分隔符的檔案

sas使用export過程将資料集中的資料導出到帶分隔符的檔案(包括dbms為dlm、csv和tab)中時,還可指定表3.14中所示的參數。

《深入解析sas:資料處理、分析優化與商業應用》一3.6 将資料集寫出到外部檔案

例3.35:将公司員工資訊導出到檔案中,檔案各列使用逗号(,)分隔。

代碼如下:

所導出的檔案的部分内容如下:

2.?導出到csv檔案

例3.36:将資料集saslib.employee中的檔案導出到csv檔案。

dbms為csv會預設使用逗号分隔所生成檔案中的各個列。該代碼所生成的檔案内容與上例相同,這裡不再給出。

還可以将上面代碼中的dbms=指定為“tab”,這時會生成各個列之間由制表符分隔的檔案。

3.?使用資料集選項導出部分資料

在proc export中還可以使用資料集選項導出部分變量或部分觀測。

例3.37:僅将所有員工的姓名、所在部門和入職日期導出到csv檔案。因為資料集saslib. employee中還包含其他變量,是以使用資料集選項keep=指定要導出的變量。代碼如下:

導出的檔案部分内容如下:

例3.38:将dsg部門的所有員工資訊導出到csv檔案中。

使用資料集選項where=指定導出滿足條件的觀測。所導出的檔案的部分内容如下:

4.?導出到microsoft excel檔案

例3.39:将資料集saslib.employee中的檔案導出到microsoft excel檔案。

所生成的microsoft excel檔案打開如圖3.40所示。

《深入解析sas:資料處理、分析優化與商業應用》一3.6 将資料集寫出到外部檔案

繼續閱讀