SAS Base认证考试:70题详解与代码示例

需积分: 48 45 下载量 48 浏览量 更新于2024-07-23 收藏 141KB DOC 举报
在本资源中,我们探讨了两个关于SAS编程的问题,涉及数据处理和文本文件解析,以及相关的代码实现。 第一个问题涉及到的是SAS编程中的累积求和(cumulative sum)操作。题目要求我们在数据集WORK.SALARY中,按部门(Department)和性别(Gender)对工资(Payroll)进行累积累加,即在每个部门内计算每个员工到目前为止的工资总额。在`by Department Gender;`语句后,我们需要插入代码来实现这个功能。选项A "Gender" 只考虑了性别,忽略了部门;选项B "Department" 只按部门分组,没有考虑性别;选项C "GenderDepartment" 和选项D "DepartmentGender" 都是复合键,但它们的顺序可能影响累积值的计算。正确的方法应该是先按部门累加,然后根据性别进行累加,因此答案是B,然后在适当的位置使用`first.`和`last.`保留标志来开始和结束累积过程。 第二个问题涉及到的是从文本文件中读取数据并根据月份生成每周的值。原始数据存储在TXT文件中,每行包含姓名、月份、状态和四个连续的周数。目标输出是一张表格,显示姓名、月份、状态以及每周的工作量。提供的程序片段展示了如何创建一个新数据集WORK.NUMBERS,使用`INFILE`和`IF...ELSEIF`语句来根据月份分别读取不同列的数据。正确选择的数据输入和状态条件判断将确保输出表格的正确性。这里的关键是确保程序能够根据输入的月份字段(Month)正确地填充相应的周数。 第一个问题是关于SAS的分组累计求和操作,正确答案是B "Department",同时需要利用`first.`和`last.`标志来区分开始和结束累计。第二个问题是关于从文本文件解析和数据转换,正确处理月份字段以生成每周工作量的SAS程序设计。理解这两个概念对于准备SAS Base认证考试至关重要,因为它们涉及到了基础的数据处理和文件操作技能。