缺少FREQ(SAS)中的值

时间:2018-01-09 00:38:03

标签: sas

我打算用一个例子来问这个......

假设我有一个数据集,其中每个观察代表一个人。其中两个变量是AGE和HASADOG(并且说它的值为1表示是,2表示否。)是否有办法运行PROC FREQ(通过AGE * HASADOG),迫使SAS在报告中包含实例行计数为零的地方?

我的意思是:如果AGE有一个特定值,使得此AGE值的观察值在HASADOG变量中没有1,则报告仍将包含此组合的行(行百分比为0)。 )

这可能吗?

1 个答案:

答案 0 :(得分:1)

PROC FREQ中的SPARSE选项可能就是您所需要的。

proc freq data=sashelp.class;
  table sex*age / sparse list;
run;

如果数据集中的值根本没有,那么SAS就无法知道它是否存在。在这种情况下,您需要一个更复杂的解决方案,基本上是一种告诉SAS您将提前使用的所有值的方法。这可以通过几个proc上的PRELOADFMT或CLASSDATA选项来完成。有关此主题的问题已在SO上被问到,所以我不会为此选项提供解决方案,这似乎超出了您的问题的范围。