问题标签 [proc-report]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
sas - 使用宏程序
我正在尝试使用宏程序来制作按总 GPA 排序的前 10% GPA 的记录,结果是 24 个最高 GPA,它们有超过 60 个学分但少于 130 个学分。这是我下面的代码
此 Proc 报告当前正在打印具有相同 ID、TotalGPA 但不同的OverallCreditHoursEarned 的列。有什么想法可以完成这项工作吗?我使用了我认为可行但不适用于宏的 Proc Rank。Proc Rank代码如下。
sas - 排序变量和 proc 报告
我有以下形式的数据集:
GROUP 1 和 GROUP 2 是字符变量,TOTAL 是数字变量。字符变量按字母顺序排序,但不按变量 TOTAL 排序。
我希望通过降低频率(TOTAL 变量)在组内(首先是 GROUP 1)对其进行排序。如果相同的组具有相同的频率,则适用字母顺序。所以输出应该是这样的:
是否有一种快速的方法可以在 proc 报告过程中执行此操作而不会弄乱初始数据集?或者即使这是不可能的,是否有一种快速的方法可以有效地对其进行适当的排序?我想到的唯一方法是为每个组单独排序,然后合并排序的数据集,这需要太多时间。
sas - 自定义 proc 报告
我需要生成一些报告,并且我总是在报告过程中挣扎以获得所需的结果,而不会过多地弄乱初始数据集,这需要花费大量时间。
数据集的形式如下:
输出应该是:
有没有使用 proc 报告生成输出的好方法(即有效)?因为我看到的唯一方法是在 ID 变量中手动创建空白字符并手动创建带有变量的列并大量使用 put 函数来创建空格。proc 报告的唯一用途是通过使用排序变量在主题之间创建空格。花费的时间是疯狂的。我试图找到一些好的资源,但没有成功。
我将不胜感激任何建议。谢谢。
sas - proc报告中分页后重复值
我创建了以下形式的报告:
我需要遵循一个要求,如果分页符出现在 ID 块内,则 ID 值必须显示在下一页上。不接受以下表格:
分页符不得出现在 VAR1 和 VAR2 之间,或者:
报告应如下所示:
问题是 - 如何获得结果?我不想在单独的页面上显示每个 ID,因为唯一 ID 块的长度不同。因此,没有像为不同的 ID 创建具有不同值的分页符变量这样简单的解决方案。我想避免修改我输入 proc 报告的数据集中的任何变量(分组/排序变量除外)。
我将不胜感激对此的任何意见。谢谢。
sas - 删除列表的 proc 报告中标题和报告之间的空格
我正在寻找一种方法来删除报告标题和正文之间的空白行。
上面的代码将创建类似于以下输出的内容:
我想删除报告标题和上方虚线之间的空白行。我知道我可以在其中使用compute before _page_
块和line
语句来做到这一点,但我想使用标题。输出应如下所示:
sas - SAS - 使用 proc 的 Summarize 功能报告总百分比
我有一张包含过去两年信息的几个组织预算的表格,我需要为今年的信息添加列。因此,基本上,我有一个表格,其中包含以下列:第 1 年预算/第 2 年预算/第 2 年更改($)/第 2 年更改(%)/第 3 年预算/第 3 年更改($)/第 3 年更改(%)。
我需要生成一个包含此信息的报告,以及底部汇总每一列的汇总行。前一年的文档使用 proc report 中的 summarise 命令来执行此操作,但我认为这样做有问题。
这给了我这样的东西:
| Y1 | Y2 | $更改 | % 变化 | Y3 | $ 更改 | % 变化 |
| 9,466,818 美元 | 10,645,871 美元 | 1,179,053 美元 | 0.298 | 14,316,101 美元 | 3,670,230 美元 | 0.698 |
| 9,466,818 美元 | 10,645,871 美元 | 1,179,053 美元 | 0.298 | 14,316,101 美元 | 3,670,230 美元 | 0.698 |
底线以指定方式风格化(灰色背景、粗体、斜体)。
所以我遇到的问题是:
为什么实际数据也没有打印在表格中?(可能是一个非常简单和愚蠢的错误,但 SAS 不是我的首选软件,所以我不知道我错过了什么。)
百分比变化似乎不准确。我将百分比变化计算为 (Y2-Y1)/Y1,因此对于总百分比变化,我需要使用其他列的总和 - (TY2 - TY1)/TY1(对吗?)。如果我的数学是正确的,那么百分比变化应该是 0.124,而不是 0.298。
1179053 / 9466818 = 0.1245(1-2 年变化)
3670230 / 10645871 = 0.3447(第 2-3 年变化)
我知道表中的数字是通过添加列得到的,与其他列相同。有没有办法停止/改变它以使数学正确?
如果我在报告中将两个百分比变化列格式化为百分比(注释掉的行),而不是得到两个总百分比的 0.298 和 0.698,我分别得到 0 和 1。有谁知道那里发生了什么?在我正在使用的实际数据集中,我得到的值既不是百分比列的总和,也不是总百分比变化的计算,我不知道是什么数学导致了这个数字。
如果有人对这些问题有任何见解,我将不胜感激。谢谢!
sas - SAS ODS RTF & proc 报告
我试图弄清楚为什么我的报告格式突然改变了。
我一直在导出一个包含 8 列的报告,所有这些列都适合 Word 文档的单页。这个月,它决定在中间放置一个分页符(所以前 4 列在第一页,后 4 列在第二页)。代码根本没有改变。
所以,想法:
- 列中的数据变大了,因此宽度不再适合一页。我认为 ods 选项“keepn”或“trkeep”可以解决这些问题,但都没有任何区别。
- 其他一些 sas 设置使列宽默认值发生变化。所以我把“width=10”放在proc报告中的define语句上。再一次,没有任何改变。
我的代码: