SAS:将二进制压缩的数据集转换为使用char压缩或反之亦然的最快方法是什么?

时间:2018-08-13 00:57:36

标签: sas

我有一个位于本地驱动器上的数据集,我想将其转换为二进制压缩的char压缩(反之亦然)。

data local.dataset1(compress=c);
  set local.dataset1;
run;

这是我所知道的最好方法。有没有更快的方法?

1 个答案:

答案 0 :(得分:3)

对于没有索引的单个数据集,是的,我认为您的数据步骤是重建文件的最佳方法。

COMPRESS= documentation详细信息部分

  

一旦压缩了文件,则设置是文件的永久属性,这意味着要更改设置,必须重新创建文件。也就是说,要解压缩文件,请为复制压缩文件的DATA步骤指定COMPRESS = NO。

您的情况不是解压缩,而是使用其他压缩选项(即算法)重新压缩

对于大于1/2的大型磁盘填充数据集,在重建数据集时可能会出现错误-您需要先将原始文件移至单独的磁盘,然后在{ {1}}库。

对于具有标签,密码,世代和索引等元数据的数据集,您可能要使用Proc DATASETS,带有NOCLONE选项的COPY语句。