本书以大量实例、清晰简明的解释以及尽可能少的术语来介绍SAS语言,且大部分的功能均来自Base SAS。Base SAS包含了所有程序员所使用的核心功能。但也有例外,例如第9章包含了使用SAS/STAT模块的过程;此外还有第2章及0章中,介绍从其他软件导入导出数据,其中一些方法要求使用SAS/ACCESS Interface to PC Files。我们努力介绍初学者可能需要的所有Base SAS特性。有些读者可能会对某些主题的出现感到惊讶,例如宏,虽然宏通常被认为是技能,有时候新手同样需要用到,因此我们也做了介绍。但这并不是说您需要了解本书的内容,您仅需阅读能够解决您问题的部分章节即可。即便是从头到尾通读过此书,当碰到新的编程挑战时,您仍可能需要重启记忆,回来温习相关内容。
目录章 SAS软件使用入门 0011.1 SAS语言 0021.2 SAS数据集 0041.3 DATA步和PROC步 0061.4 DATA步的内置循环 0071.5 选择提交SAS程序的模式 0091.6 SAS窗口环境下的窗口和命令 0111.7 在SAS窗口环境中提交程序 0131.8 阅读SAS日志 0161.9 查看结果0181.10 SAS数据逻辑库 0201.11 在VIEWTABLE窗口中查看数据集 0241.12 用SAS资源管理器查看数据集属性0261.13 使用SAS系统选项 028第2章 导入数据到SAS 0312.1 导入数据到SAS的方法 0322.2 使用VIEWTABLE窗口输入数据0342.3 使用导入向导读取文件0362.4 指定原始数据位置039 2.5 读取空格分隔的原始数据042 2.6 读取按列排列的原始数据044 2.7 读取非标准格式的原始数据046 2.8 常用输入格式049 2.9 混合的输入样式051 2.10 读取杂乱的原始数据053 2.11 为每个观测读取多行原始数据055 2.12 从每行原始数据读取多个观测058 2.13 读取原始数据文件的一部分059 2.14 在INFILE 语句中使用选项控制输入0612.15 使用DATA 步读取分隔文件 064 2.16 使用IMPORT 过程读取分隔文件066 2.17 使用IMPORT 过程读取Excel 文件069 2.18 临时和SAS 数据集071 2.19 通过LIBNAME 语句使用SAS 数据集 074 2.20 通过直接引用使用SAS 数据集076 2.21 列出SAS 数据集中的内容079 第3 章使用数据 083 3.1 创建和重定义变量084 3.2 使用SAS 函数086 3.3 常用SAS 字符函数088 3.4 常用SAS 数值函数090 3.5 使用IF-THEN 语句 092 3.6 用IF-THEN/ELSE 语句分组观测 095 3.7 提取数据的子集097 3.8 使用SAS 日期099 3.9 常用日期输入格式、函数和输出格式102 3.10 使用RETAIN语句与求和语句 1043.11 利用数组简化程序 1063.12 使用变量名列表的快捷方式108第4章排序、打印和汇总数据 1134.1 使用SAS过程 1144.2 使用 WHERE语句在过程中生成子集1164.3 使用 PROC SORT 对数据排序 1184.4 更改字符数据的排序顺序1204.5 使用PROC PRINT打印数据1234.6 使用输出格式更改打印值的外观1254.7 可供选择的标准输出格式1274.8 使用 PROC FORMAT 创建自己的输出格式 1304.9 编写简单的自定义报表1324.10 使用PROC MEANS汇总数据 1344.11 将汇总统计量写入 SAS 数据集 1364.12 使用 PROC FREQ 为数据计数 1394.13 使用 PROC TABULATE 生成数据报表 1414.14 将统计量添加到PROC TABULATE输出 1434.15 美化PROC TABULATE输出 1454.16 更改PROC TABULATE输出的表标题 1474.17 为PROC TABULATE输出的数据单元格指定多种输出格式 1504.18 使用PROC REPORT生成简单输出 1514.19 在PROC REPORT中使用DEFINE语句 1534.20 使用PROC REPORT创建汇总报表 1564.21 在PROC REPORT输出中添加汇总分割 1584.22 在PROC REPORT输出中添加统计量 1604.23 在PROC REPORT输出中添加计算变量 1624.24 在过程步中使用用户自定义输出格式分组数据165第5 章使用输出交付系统(ODS)增强输出 169 5.1 初识输出交付系统170 5.2 追踪和选择过程步输出结果172 5.3 从过程步输出中创建SAS 数据集174 5.4 创建文本输出177 5.5 创建HTML 输出 179 5.6 创建RTF 输出 181 5.7 创建PDF 输出184 5.8 自定义标题和脚注186 5.9 通过“STYLE=”选项自定义PRINT 过程输出 188 5.10 通过“STYLE=”选项自定义REPORT 过程输出190 5.11 通过“STYLE=”选项自定义TABULATE过程输出192 5.12 在输出中添加信号灯效果195 5.13 样式属性列表197 第6 章修改和合并数据 201 6.1 使用SET 语句修改数据集 202 6.2 使用SET 语句堆叠数据集 204 6.3 使用SET 语句交错连接数据集 2066.4 使用一对一匹配合并数据集208 6.5 使用一对多匹配合并数据集211 6.6 合并汇总统计量和原始数据213 6.7 合并总计与原始数据215 6.8 通过事务更新主数据集217 6.9 使用OUTPUT 语句输出多个数据集219 6.10 使用OUTPUT 语句将一条观测变为多条观测2226.11 使用SAS 数据集选项 224 6.12 使用“IN=”选项追踪和选择观测226 6.13 使用“WHERE=”选项选择观测 2286.14 使用PROC TRANSPOSE将观测转置为变量 2316.15 使用SAS自动变量 233第7章 使用SAS宏编写灵活的代码 2377.1 宏概述2387.2 用宏变量替换文本2397.3 拼接宏变量与其他文本2427.4 使用宏创建模块代码2447.5 向宏添加参数2467.6 编写带条件逻辑的宏2487.7 使用CALL SYMPUT编写数据驱动程序 2517.8 调试宏错误253第8章 可视化数据 2578.1 ODS图形概述2588.2 绘制条形图2608.3 绘制直方图和密度曲线2628.4 绘制盒形图2648.5 绘制散点图2668.6 绘制序列图2688.7 绘制拟合曲线2708.8 控制坐标轴和参考线2728.9 控制图例和插入项2748.10 自定义图形属性2768.11 绘制面板图形 2798.12 指定图像属性和保存图形输出281第9 章基本统计过程的使用方法285 9.1 使用PROC UNIVARIATE 检验数据的分布 286 9.2 使用PROC UNIVARIATE 创建统计图形 288 9.3 使用PROC MEANS 生成统计量 290 9.4 使用PROC TTEST 检验样本均值 292 9.5 使用PROC TTEST 绘制统计图形 294 9.6 使用PROC FREQ 检验分类数据297 9.7 使用PROC FREQ 创建统计图形299 9.8 使用PROC CORR 检验数据的相关性 301 9.9 使用PROC CORR 创建统计图形 303 9.10 使用PROC REG 进行简单回归分析 305 9.11 使用PROC REG 创建统计图形 308 9.12 使用PROC ANOVA 进行单因素方差分析 3109.13 理解PROC ANOVA 的输出 313 0 章导出数据 317 10.1 数据导出方法318 10.2 使用导出向导生成文件319 10.3 使用EXPORT 过程导出带分隔符的文件322 10.4 使用EXPORT 过程导出MicrosoftExcel 文件 324 10.5 使用DATA 步导出原始数据文件 32610.6 使用ODS 生成带分隔符的文件和HTML文件329 第 11 章调试 SAS 程序333 11.1 编写有效的SAS 程序 334 11.2 修复无效程序336 11.3 查找缺失的分号338 11.4 提示:INPUT语句到达一行的末尾 34111.5 提示:LOST CARD 34311.6 提示:无效的数据 34511.7 提示:生成缺失值 34711.8 提示:数值已转换为字符(或反之) 34911.9 DATA步产生错误结果而没有错误消息 35211.10 错误:选项无效、选项无法识别、语句无效35411.11 提示:变量未初始化/错误:变量未找到 35711.12 SAS截断字符型变量 35911.13 SAS在程序的中间停止 36111.14 SAS耗尽内存或磁盘空间 363附录 从SQL到SAS 367
洛拉·D.德尔维奇拥有超过25年的工作经验,她很乐意教别人SAS软件,而且也喜欢使用SAS解决具有挑战性的问题。她大部分职业生涯都是在加州大学戴维斯分校度过的,在此期间,使用SAS软件支撑她的教学和研究工作。
苏珊·J.斯劳特在25年前的研究生学习阶段中接触到了SAS软件。从那以后,她在各种商业和学术环境种使用SAS。目前在她自己的公司Avocet Solution担任顾问。