SAS可以将CSV文件转换为二进制格式吗?

时间:2009-07-09 13:59:52

标签: csv sas

我们需要生成的输出是标准分隔文件,但我们需要二进制文件而不是ascii内容。这可能使用SAS吗?

4 个答案:

答案 0 :(得分:4)

您需要特定的二进制格式吗?或者只是非ascii的东西?如果您正在使用proc导出,则可能仅限于可用的任何格式。但是,您始终可以手动创建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,我不是那么熟悉,但你可能需要安装命令行zip工具。

SAS的这个链接建议使用winzip,它有一个免费下载的版本。否则,代码类似。 http://support.sas.com/kb/26/011.html

答案 1 :(得分:1)

您是说您要将二进制数据输出到csv?

如果是这样,我认为没有必要就如何处理这个问题制定标准。

我建议尝试一下(想到proc导出)并查看结果是否符合您的期望。

答案 2 :(得分: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格式。 / p>

答案 3 :(得分:0)

使用SAS输出.csv文件;在Excel中打开它并另存为您的客户想要的格式。您也可以在###中使用一些脚本来自动执行此过程。 (用您最喜欢的脚本语言替换###。)