【问题标题】:Missing values in a FREQ (SAS)FREQ (SAS) 中的缺失值
【发布时间】:2018-06-18 00:05:42
【问题描述】:

我会用一个例子来问这个......

假设我有一个数据集,其中每个观察代表一个人。其中两个变量是 AGE 和 HASADOG(假设它的值为 1 表示是,2 表示否。)有没有办法运行 PROC FREQ(由 AGE*HASADOG 提供),强制 SAS 在报告中包含实例行哪里计数为零?

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

这可能吗?

【问题讨论】:

  • 使用 SPARSE 选项,但请不要问什么是可能的,而是问如何去做。
  • 我是 SAS 的新人;我实际上还不知道有什么可能。 :)

标签: sas


【解决方案1】:

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

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

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

【讨论】:

  • 谢谢,这正是我想要的!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-12-04
  • 1970-01-01
相关资源
最近更新 更多