【发布时间】:2014-02-11 18:32:42
【问题描述】:
我有一个包含格式信息的 sas7bdat 表,但我没有格式,因此很多数据显示为 * 并且没有多大意义。我知道下面的信息数据在那里——如何从表格中删除所有格式?
【问题讨论】:
标签: sas
我有一个包含格式信息的 sas7bdat 表,但我没有格式,因此很多数据显示为 * 并且没有多大意义。我知道下面的信息数据在那里——如何从表格中删除所有格式?
【问题讨论】:
标签: sas
除了@JustinDavies 的回答还有另一种方法是使用PROC DATASETS 过程。
改编自 SAS 文档:Example 1: Removing All Labels and Formats in a Data Set
proc datasets lib=<your library> memtype=data nolist;
modify <your dataset>;
attrib _all_ label=' ';
attrib _all_ format=;
attrib _all_ informat=;
run;
使用PROC DATASETS 的优势在于它会就地修改数据集的元数据 - 即,它不会像该问题的其他答案中所建议的那样创建新数据集。如果您的数据集很大,该功能可能会很有用。
【讨论】:
以下代码将从表 FORMATTED_TABLE 中删除所有格式并创建一个名为 UNFORMATTED_TABLE 的新表
data UNFORMATTED_TABLE;
set FORMATTED_TABLE;
format _all_;
run;
【讨论】:
OPTIONS nofmterr; 来读取数据表。