【问题标题】:SAS Proc Freq Not Displaying ValuesSAS Proc Freq 不显示值
【发布时间】:2020-02-12 13:50:18
【问题描述】:

我正在使用 Proc Freq 进行一些简单的交叉制表,但我注意到 SAS 给我的输出不包含任何频率计数;我只得到百分比。

这是我在 SAS 中运行的示例代码(我使用的是 SAS 9.4):

data test;
  input year 1-5 group $6;
cards;
2018 A
2018 A
2018 B
2018 B
2019 A
2019 A
2019 A
2019 B
;
run;

proc freq data = test;
  table year * group / norow nopercent;
run;

我希望有一个表格,其频率计数与下面的列百分比相匹配,但这是 SAS 给我的:

有谁知道如何获得要显示的频率值?

【问题讨论】:

  • 嗯,这当然是不寻常且不正确的。如果重新启动 SAS,您会得到相同的结果吗?您使用的是自定义模板还是特殊的 ODS HTML 选项。
  • 代码中没有遗漏频率的内容。
  • 我尝试重新启动 SAS 但仍然得到相同的结果。我使用的电脑是全新的(周一收到),所以我没有添加任何模板或选项。我会说我在我的旧计算机(使用 SAS 9.3)上运行了类似的代码,但我没有收到此错误。
  • 您发布了一张 ODS 输出的照片。也许你的风格搞砸了,文字是不可见的?您在纯文本列表输出中看到了什么?
  • 所以这不是 ODS 的风格。但它可能是 PROC FREQ 的模板搞砸了。一定要检查 SAS 支持,因为它看起来不像是编程问题,而是安装/配置问题。

标签: sas frequency


【解决方案1】:

我运行了你的代码并得到了这个。我想有些事情你没有告诉我们。

【讨论】:

  • 我使用的电脑是全新的(我周一收到的),所以我没有添加任何模板或选项。我在旧计算机(使用 SAS 9.3)上运行了类似的代码,但没有收到此错误。我的想法是在这台计算机上安装 SAS 9.4 时发生了一些事情,但我不知道是什么导致了这个问题。
【解决方案2】:

感谢大家的帮助-我找到了问题。 SAS 附带的交叉表频率模板似乎存在问题。我可以使用以下代码恢复它:

proc template;
    delete base.freq.crosstabfreqs;
run;

感谢大家的帮助!

【讨论】:

  • 我怀疑安装错误。安装后必须运行某些更改模板的内容。确保您没有授予用户对 SAS 系统文件的写入权限。如果您使用的是 Unix,请确保您没有使用与安装 SAS 程序相同的帐户来运行您的 SAS 程序。
  • 同意,不应该在新安装中发生。在事实或其他设置覆盖它之后必须发生其他事情来更改它 - 即由于某种原因覆盖您的模板的自动执行程序。
【解决方案3】:

@_null_ 你的图片不是我在运行问题代码时得到的输出。

Frequency 和 Col Pct 不在行标题单元格中,而是显示在表格左侧偏移的框中。

【讨论】:

  • 这是我期待看到的那种表。我觉得某些 proc freq 选项/设置由于某种原因在这台机器上没有正确设置。我知道有一种方法可以更改 proc freq 格式,即使我没有对它们进行任何更改,有没有办法恢复默认设置?
  • 我显示的输出来自 SAS 报告目标。
  • 明白了。每个目的地都有它的优点和缺点。我的图像来自对 ODS HTML 目标生成的内容的查看。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-01-03
相关资源
最近更新 更多