2009-07-09 137 views
3

我們需要產生的輸出是一個標準的分隔文件,但我們需要二進制而不是ascii內容。這可能使用SAS嗎?SAS可以將CSV文件轉換爲二進制格式嗎?

+0

您可以讀取任何類型的數據格式並編寫任何類型的數據格式。當你說你想產生一個「二進制文件」是什麼意思?你需要哪種二進制文件格式? – 2009-07-11 11:45:29

回答

1

實際上,您可以將CSV文件製作爲SAS商品; CSV是有效的SAS目錄條目類型。

下面是一個例子:

filename of catalog "sasuser.test.class.csv"; 

proc export data=sashelp.class 
    outfile=of 
    dbms=dlm; 
    delimiter=','; 
run; 

filename of clear; 

這一小段代碼出口SASHELP.CLASS入門型CSV的SAS目錄條目。

通過這種方式,您可以使用PROC CPORT/CIMPORT在不同平臺上的SAS安裝之間移動,而無需擔心所使用的二進制包格式是否適用於SAS會話,因爲它是內部SAS格式。

4

您是否需要特定的二進制格式?或者只是非ascii?如果你使用的是proc export,你可能只限於任何可用的格式。但是,您始終可以手動創建csv。

如果有什麼可以做的,你可以簡單地壓縮CSV文件。

運行的* nix系統上,例如,你會使用類似:

filename outfile pipe "gzip -c > myfile.csv.gz"; 

然後手動創建CSV:

data _null_; 
    set mydata; 
    file outfile; 
    put var1 "," var2 "," var3; 
run; 

如果這是PC/Windows的SAS,我不太熟悉,但你可能需要安裝一個命令行壓縮工具。

這個SAS鏈接建議使用winzip,它有一個可免費下載的版本。否則,代碼是相似的。 http://support.sas.com/kb/26/011.html

+0

哦,我的上帝,你應該得到sme許多upvotes! – Oleg 2014-11-01 23:18:05

1

你是說你有要輸出到csv的二進制數據嗎?

如果是這樣,我不認爲應該如何處理這個定義的標準。

我建議嘗試一下(proc export to mind),看看結果是否符合你的期望。

+0

我在說我有一個csv我想輸出爲二進制。我的想法是'二進制格式'是標準化的,像csv或其他分隔符。我意識到現在情況並非如此 - 請求了關於我們需要複製的'二進制格式'的性質的更多信息.. – 2009-07-10 22:40:38

0

使用SAS,輸出一個.csv文件;以Excel和Save As格式打開它,無論客戶需要什麼格式。您也可以在###中使用一些腳本來自動執行此過程。 (用您最喜歡的腳本語言替換###)

相關問題