《SAS语言基础与高级编程技术》PDF下载

  • 购买积分:14 如何计算积分?
  • 作  者:胡良平,胡纯严主编;王琪,吕辰龙,郭辰仪等副主编
  • 出 版 社:北京:电子工业出版社
  • 出版年份:2014
  • ISBN:9787121229893
  • 页数:446 页
图书介绍:本书SAS语言基础部分涵盖了如下内容: SAS 软件介绍、导入访问外部数据、基本SAS语言及其应用、常用SAS 函数及其应用;而SAS高级编程技术部分包括如下内容: 宏及其应用、SQL 及其应用、ODS 及其应用、数组(Array)及其应用、IML 及其应用, 以及如何掌握SAS 语言的核心技术。书中还介绍了SAS 9. 2 和SAS 9. 3 中一些新增过程和新增选项, 以及部分实用新过程的使用方法和技巧。

第1篇SAS语言基础 1

第1章 SAS软件介绍 1

1.1 SAS软件的历史与规模 1

1.2 SAS软件的框架与结构 3

1.3 SAS环境与SAS窗口 4

1.4 如何发挥SAS帮助功能的作用 5

1.5 SAS过程与SAS程序的区别 6

1.6 SAS数据步与SAS过程步简介 7

1.7 SAS数据集与其他格式数据简介 7

1.7.1 如何使数据成为SAS数据集 7

1.7.2 SAS数据集的种类与SAS数据集的命名 8

1.7.3 创建SAS数据集的方法 9

1.8 用菜单驱动法运行SAS的方法简介 12

1.8.1 何为用菜单驱动法运行SAS 12

1.8.2 用菜单驱动法进行卡方检验 12

1.9 用编程法运行SAS的方法简介 16

1.9.1 用编程法并利用已有SAS过程进行卡方检验 16

1.9.2 当没有相应的SAS过程时用编程法实现某种统计分析 18

1.10 归纳与总结 20

1.11 SASPAL软件简介 20

1.11.1 SASPAL符合初学者的需求 20

1.11.2 SASPAL使用方法 20

1.11.3 SASPAL界面简介 21

第2章 导入访问外部数据 23

2.1 概述 23

2.1.1 外部数据 23

2.1.2 SAS访问外部数据的方法 23

2.2 导入/导出向导 23

2.2.1 介绍 23

2.2.2 应用举例 23

2.3 Import和Export过程 30

2.3.1 介绍 30

2.3.2 语法 30

2.3.3 data-source-statement选项 32

2.3.4 小结 34

2.4 数据直接访问 34

2.4.1 介绍 34

2.4.2 LIBNAME语句 34

2.4.3 SQL过程连接外部数据 36

第3章 基本SAS语言及其应用 37

3.1 SAS程序 37

3.1.1 SAS程序简介 37

3.1.2 SAS程序的构成和书写格式 38

3.2 SAS语句概念 38

3.2.1 SAS关键词 38

3.2.2 SAS名 38

3.2.3 SAS常量 38

3.2.4 SAS变量 39

3.2.5 缺失值 40

3.2.6 SAS表达式 40

3.2.7 SAS运算符 40

3.3 数据步常用语句 41

3.3.1 数据获取语句 41

3.3.2 数据步文件管理语句 43

3.3.3 SAS变量操作语句 52

3.3.4 SAS观测值操作语句 57

3.3.5 数据步循环与控制语句 66

3.4 过程步常用语句 70

3.5 全程语句 73

3.5.1 全程数据存取语句 73

3.5.2 全程日志控制语句 73

3.5.3 全程环境控制语句 74

3.5.4 全局输出控制语句 74

3.5.5 全程程序控制语句 74

第4章 常用SAS函数及其应用 76

4.1 SAS函数中的基础知识 76

4.1.1 SAS函数 76

4.1.2 SAS参数 76

4.1.3 函数值 76

4.1.4 SAS函数分类 76

4.1.5 使用SAS函数的注意事项 77

4.2 日期时间函数 77

4.2.1 日期时间函数简介 77

4.2.2 用DATDIF函数计算两个日期之间的天数 78

4.2.3 用YRDIF函数计算两个日期之间的年数 79

4.2.4 用HOUR函数和MINUTE函数计算当前时间 79

4.2.5 用YEAR函数、QTR函数、MONTH函数和DAY函数分别计算当前的年份、季度、月份和日期 80

4.2.6 用HOLIDAY函数计算指定年份、指定节日的日期 80

4.3 截取函数 80

4.3.1 截取函数简介 80

4.3.2 用CEIL函数求最小整数 80

4.3.3 用FLOOR函数求最大整数 81

4.3.4 用INT函数取整数部分 81

4.3.5 用ROUND函数按指定的精度取舍入值 81

4.3.6 用TRUNC函数求截取数值 81

4.4 分位数函数 82

4.4.1 分位数函数简介 82

4.4.2 用CINV函数计算卡方分布的P分位数 82

4.4.3 用FINV函数计算F分布的P分位数 82

4.4.4 用PROBIT函数计算标准正态分布的P分位数 83

4.4.5 用TINV函数计算t分布的P分位数 83

4.5 数学函数 83

4.5.1 数学函数简介 83

4.5.2 用ABS函数求绝对值 84

4.5.3 用EXP函数计算e的x次幂 84

4.5.4 用LOG函数计算以e为底的真数x的自然对数值 85

4.5.5 用LOG10函数计算以10为底的真数x的对数值 85

4.5.6 用MOD函数计算余数值 85

4.5.7 用SQRT函数计算平方根 85

4.5.8 用SQRT函数、FNONCT函数和FINV函数计算ψ值 86

4.5.9 用CNONCT函数和CINV函数计算λ值 86

4.6 概率函数 87

4.6.1 概率函数简介 87

4.6.2 用PROBCHI函数计算服从卡方分布的随机变量小于x的概率 87

4.6.3 用PROBF函数计算服从F分布的随机变量小于x的概率 87

4.6.4 用PROBNORM函数计算标准正态分布曲线下的面积 88

4.6.5 用PROBT函数计算服从t分布的随机变量小于x的概率 88

4.6.6 用PROBMC函数计算q 临界值 89

4.7 样本统计函数 90

4.7.1 样本统计函数简介 90

4.7.2 用MEAN函数、MAX函数与MIN函数分别计算算术均值、最大值与最小值 91

4.7.3 用SUM函数、USS函数与CSS函数分别计算和、未校正平方和与校正平方和 91

4.7.4 用VAR函数、STD函数、STDERR函数和CV函数分别计算方差、标准差、标准误与变异系数 91

4.7.5 用SKEWNESS函数和KURTOSIS函数分别计算偏度系数与峰度系数 92

4.7.6 用NMISS函数计算缺失值的个数 92

4.8 随机数函数 92

4.8.1 随机数函数简介 92

4.8.2 用NORMAL函数或RANNOR函数产生服从正态分布的随机数 92

4.8.3 用UNIFORM函数或RANUNI函数产生服从均匀分布的随机数 93

4.8.4 用RANEXP函数产生服从指数分布的随机数 94

4.8.5 用RANBIN函数产生服从二项分布的随机数 94

4.8.6 用RANPOI函数产生服从泊松分布的随机数 95

4.9 SAS CALL子程序 95

4.9.1 随机数子程序 95

4.9.2 其他子程序 95

4.9.3 随机数子程序的运用 95

第2篇SAS高级编程技术 98

第5章 宏及其应用 98

5.1 概述 98

5.2 宏变量 98

5.2.1 宏变量的定义 99

5.2.2 宏变量的直接引用 100

5.2.3 宏变量值的显示 101

5.2.4 宏变量值的改变 102

5.2.5 宏变量的间接引用 102

5.2.6 自动宏变量 103

5.2.7 全局宏变量 104

5.2.8 局部宏变量 105

5.3 宏与宏参数 106

5.3.1 创建名为mac的宏 106

5.3.2 创建形如mac (variable 1,variable2,…)的宏 107

5.3.3 宏参数赋值 107

5.4 宏的引用 107

5.4.1 引用名为mac的宏 107

5.4.2 引用形如mac(variablel, variable2,…)的宏 108

5.4.3 引用形如mac(% macl () , variablel,…)的宏 108

5.4.4 引用含有特殊字符的宏 110

5.5 常用宏语句和系统宏函数 113

5.5.1 宏表达式 113

5.5.2 常用宏语句 116

5.5.3 常用系统宏函数 120

5.6 宏与其他模块接口 123

5.6.1 宏与数据步接口 123

5.6.2 宏与SQL接口 124

5.6.3 用户自定义宏的存储 125

第6章 SQL过程及其应用 126

6.1 SQL简介 126

6.2 SQL过程的语句介绍 127

6.2.1 选择表中的列——select 128

6.2.2 创建新的列 129

6.2.3 数据排序——order 133

6.2.4 检索满足特定要求的数据——where 134

6.2.5 聚集数据 137

6.2.6 为数据分组——Group By 139

6.2.7 过滤分组查询结果—— Having 140

6.2.8 多表连接查询 141

6.2.9 嵌套查询 147

6.2.10 查询结果操作符 149

6.2.11 使用SQL创建新表 150

6.2.12 添加新的数据行 150

6.2.13 更新数据 152

6.2.14 数据列操作 154

第7章 ODS及其应用 157

7.1 概述 157

7.2 ODS特点和常用输出目标 157

7.2.1 ODS特点 157

7.2.2 ODS目标 158

7.3 常用ODS语句 159

7.3.1 PUT语句 159

7.3.2 ODS TRACE语句 161

7.3.3 常用控制语句 162

7.3.4 ODS LISTING语句 165

7.3.5 常用第三方格式输出目标语句 166

7.3.6 ODS OUTPUT语句 170

7.4 SAS ODS的应用 172

7.4.1 输出定量资料t检验结果 172

7.4.2 输出定量资料非参数检验结果 173

7.4.3 输出定量资料方差分析结果 175

7.4.4 输出定性资料卡方检验结果 176

7.4.5 输出定性资料秩和检验结果 177

7.4.6 输出定性资料相关分析结果 179

7.4.7 输出多重线性回归分析结果 180

第8章 数组及其应用 183

8.1 Array语法格式 183

8.2 数组Array定义 183

8.2.1 定义数值型数组和字符型数组 184

8.2.2 特殊数组——隐含下标数组 185

8.2.3 临时数组 185

8.3 数组Array初始化 186

8.4 数组引用 186

8.5 有关数组的SAS函数 188

第9章 IML及其应用 190

9.1 概述 190

9.2 由矩阵标识创建矩阵 190

9.2.1 矩阵的定义 190

9.2.2 矩阵的创建 191

9.3 矩阵操作 193

9.3.1 矩阵运算符的分类 193

9.3.2 矩阵运算符的应用 193

9.3.3 矩阵的下标 198

9.3.4 矩阵的混合表达式 202

9.4 IML编程语句 202

9.4.1 IML基本编程语句 202

9.4.2 模块的定义和执行 206

9.4.3 IML中的命令语句 209

9.5 IML中的常用函数 210

9.5.1 矩阵生成函数 210

9.5.2 矩阵查询函数 214

9.5.3 数学函数 216

9.6 IML中数据集的操作 218

9.6.1 打开与激活数据集 218

9.6.2 显示与引用数据集 219

9.6.3 选择观测条目 220

9.6.4 从数据集中读取观测 222

9.6.5 编辑SAS数据集 223

9.6.6 由矩阵创建数据集 224

9.6.7 数据集排序 225

9.6.8 建立数据集索引 226

9.6.9 IML数据集操作与DATA步的比较 226

第10章 如何把握SAS语言的核心技术 228

10.1 宏的核心技术 228

10.1.1 宏的概念与宏变量 228

10.1.2 宏的结构及调用 230

10.1.3 宏循环语句 231

10.1.4 宏函数 231

10.1.5 SYMPUT子程序——宏与数据步的信息交换 233

10.2 ODS的核心技术 234

10.2.1 传送目标 234

10.2.2 改变文件风格 240

10.2.3 创建图形输出 243

10.3 SQL的核心技术 245

10.3.1 SQL的本质与重点 245

10.3.2 重点SQL语句的使用及其与相应功能的DATA步对比 245

10.3.3 实例分析 250

10.4 数组的核心技术 254

10.4.1 SAS数组的语法结构 254

10.4.2 实例分析 259

10.5 IML的核心技术 264

10.5.1 IML过程的语法结构 264

10.5.2 实例分析 274

第3篇SAS 9.2 和SAS 9.3 新增内容及用法简介 279

第11章 SAS 9.2 的SAS/BASE模块中新增内容简介 279

11.1 Base过程的新功能 279

11.1.1 SAS/BASE模块新增程序 279

11.1.2 SAS/BASE模块新增选项 280

11.2 Base语言的新功能 283

11.2.1 概述 283

11.2.2 SAS系统功能 284

11.2.3 SAS语言元素 285

11.3 输出传输系统的新功能 293

11.3.1 概述 293

11.3.2 ODS语句的新增功能和增强功能 294

11.3.3 DOCUMENT过程的新增功能和增强功能 295

11.3.4 TEMPLATE过程的新增功能和增强功能 295

11.3.5 改进的ODS统计图形 297

11.3.6 针对SAS/GRAPH的新增ODS支持 297

11.3.7 新增的PDF安全选项 297

11.3.8 新增的可缩放向量图形和字体 297

11.3.9 查询打开的ODS目标 298

11.4 数据安全技术的新功能 298

11.4.1 概述 298

11.4.2 总体增强 298

11.5 宏语言工具的新功能 298

11.5.1 概述 298

11.5.2 新增的自动宏变量 298

11.5.3 新增的SAS宏系统选项 298

11.5.4 % MACRO语句的新选项 299

11.6 可扩展性能数据引擎的新功能 299

11.6.1 概述 299

11.6.2 SPD引擎数据集选项 299

11.6.3 SPD引擎LIBNAME语句选项 299

11.6.4 SPD引擎系统选项 299

11.7 XML LIBNAME引擎的新功能 299

11.7.1 概述 299

11.7.2 增强的LIBNAME语句 300

11.7.3 新增的XMLMap功能 300

11.7.4 停用的语法 300

第12章 SAS 9.2 的SAS/STAT模块新增内容简介 301

12.1 ODS统计图形 301

12.2 新增的相关软件 301

12.3 新增过程 301

12.4 主要的增强方面 302

第13章 SAS 9.3 的SAS/BASE模块新增内容简介 309

13.1 Base SAS 9.3 过程的新功能 309

13.1.1 新增的Base SAS过程 309

13.1.2 增强的Base SAS过程 309

13.2 Base SAS 9.3 统计过程的新功能 311

13.3 Base SAS 9.3 语言参考的新功能 311

13.3.1 Base SAS中的ODS图形 312

13.3.2 SAS系统功能 312

13.4 Base SAS 9.3 函数和CALL子程序的新功能 313

13.4.1 新增的函数和CALL子程序 313

13.4.2 现有函数的增强 313

13.5 Base SAS 9.3 语句的新功能 314

13.5.1 新增的SAS语句 314

13.5.2 增强的SAS语句 314

13.6 Base SAS 9.3 系统选项的新功能 314

13.6.1 对标记的代码段使用检查点模式和重启模式 314

13.6.2 将系统选项重置为其启动值或默认值 314

13.6.3 创建LIBNAME语句中指定的目录 315

13.6.4 对SAS数据集、SAS数据视图和项存储的命名使用扩展规则 315

13.6.5 更改ODS文档中页的方向 315

13.6.6 控制SAS名称的自动更正 315

13.6.7 在电子邮件中指定UTC时差 315

13.6.8 指定URLENCODE和URLDECODE函数的编码 315

13.6.9 GETOPTION函数的增强 315

13.6.10 增强的SAS系统选项 315

13.6.11 OPTIONS过程的增强 316

13.7 Base SAS 9.3 输出传输系统的新功能 316

13.7.1 SAS窗口环境(针对UNIX和Windows)中的默认输出更改 316

13.7.2 Base SAS软件中包含选定的SAS/GRAPH产品 318

13.7.3 PRINTER注册表设置的更改 318

13.7.4 DOCUMENT过程的增强功能 318

13.7.5 模板过程的增强功能 318

13.7.6 ODS语句的增强功能 319

13.7.7 新增的系统选项 319

13.8 Base SAS 9.3 ODS图形过程的新功能 319

13.8.1 ODS图形过程随Base SAS附带 319

13.8.2 针对默认ODS输出的更改 319

13.8.3 SGPLOT和SGPANEL过程新增的绘图语句 320

13.8.4 针对PROC SGPLOT、PROC SGPANEL和PROC SGSCATTER语句的更新 320

13.8.5 针对SGPLOT和SGPANEL过程中的绘图语句的更新 320

13.8.6 SGPANEL和SGPLOT过程的轴更新 322

13.8.7 对SGRENDER过程的更新 322

13.8.8 对SGDESIGN过程的更新 322

13.8.9 新增的属性映射功能 322

13.8.10 新增的注解功能(试用) 322

13.9 Base SAS 9.3 图形模板语言的新功能 322

13.9.1 新增的布局语句 323

13.9.2 新增的绘图语句 323

13.9.3 新增的图例语句 323

13.9.4 常规用途的新功能 323

13.9.5 SAS 9.2 语句的增强功能 324

13.10 Base SAS 9.3 ODS图形设计器的新功能 327

13.10.1 设计器随Base SAS附带 327

13.10.2 ODS样式的增强和更改 327

13.10.3 改进了设计器的启动方式 327

13.10.4 更多选项可用于保存图形 327

13.10.5 增强了数据分配选项 328

13.10.6 增强了图属性 328

13.11 Base SAS 9.3 ODS图形编辑器的新功能 328

13.11.1 编辑器随Base SAS附带 328

13.11.2 不再需要独立编辑器 328

13.11.3 ODS的更改和增强 328

13.11.4 编辑图形方面的增强功能 329

13.11.5 用于SGE文件的附加呈现选项 329

13.12 INFOMAPS过程和Base SAS 9.3 的信息映射LIBNAME引擎中的新功能 329

13.12.1 INFOMAPS过程的功能 329

13.12.2 信息映射LIBNAME引擎功能 330

13.13 Base SAS 9.3 元数据语言接口的新功能 330

13.13.1 过程 330

13.13.2 系统选项 331

13.14 Base SAS 9.3 宏语言工具的新功能 331

13.14.1 新增的自动宏变量 332

13.14.2 新增的宏函数 332

13.14.3 新增的宏语句 332

13.14.4 新增的宏系统选项 332

13.15 Base SAS 9.3 区域语言支持的新功能 332

13.15.1 常规增强功能 332

13.15.2 新增的编码 333

13.15.3 新增的格式 333

13.15.4 新增的函数 333

13.15.5 新增的系统选项 333

13.16 Base SAS 9.3 SQL过程的新功能 333

13.16.1 优化PUT函数的能力 333

13.16.2 重新使用LIBNAME语句数据库连接的能力 333

13.16.3 更多的PROC SQL语句 选项 334

13.16.4 INTO子句的更多宏变量指定 334

13.16.5 新增的字典表 334

13.16.6 新增的系统宏变量 334

13.16.7 更新的输出示例 334

第14章 SAS 9.3 的SAS/STAT模块新增内容简介 335

14.1 新增过程 335

14.2 主要增强功能 335

14.2.1 SAS/STAT 9.22 中的主要增强功能 335

14.2.2 ODS图形的更改 336

14.2.3 增强功能 336

14.2.4 从SAS/STAT 9.22 到SAS/STAT 9.3 的软件行为变化 339

第15章 用SAS中的新过程实现某些统计分析 341

15.1 FMM过程 341

15.1.1 FMM过程简介 341

15.1.2 FMM过程语句用法和功能 341

15.1.3 FMM过程应用举例 344

15.2 QUANTREG过程 348

15.2.1 QUANTREG过程简介 348

15.2.2 QUANTREG过程语句用法和功能 349

15.2.3 QUANTREG过程应用举例 351

15.3 GLMSELECT过程 357

15.3.1 GLMSELECT过程简介 357

15.3.2 GLMSELECT过程应用举例 359

15.4 GLIMMIX过程 368

15.4.1 GLIMMIX过程简介 368

15.4.2 GLIMMIX过程语句用法和功能 368

15.4.3 GLIMMIX过程应用举例 370

第16章 SAS 9.2 和SAS 9.3 的新增选项和功能 378

16.1 Freq过程中的新增选项和功能 378

16.1.1 使用ODS图形模式生成统计图 378

16.1.2 等效性、优效性和非劣效性检验 381

16.1.3 单组设计二项分布置信限估计 384

16.1.4 Zelen’ s test 385

16.2 UNIVARIATE过程中的新增选项和功能 385

16.2.1 使用ODS生成统计图 385

16.2.2 用PPPLOT绘制P- P图 387

16.2.3 新增5种连续型随机变量的概率分布 387

16.3 CORR过程——PLOYSERIAL选项计算多序列相关分析表 390

16.4 FACTOR过程绘制因子分析相关的统计图 392

16.5 GLM过程 395

16.5.1 均值和LS均值比较图形输出 395

16.5.2 生成汇总诊断图和残差图 397

16.6 TTEST过程中的新增选项和功能 398

16.6.1 定量资料等效性检验 398

16.6.2 定量资料优效性检验 400

16.6.3 定量资料非劣效性检验 401

第4篇用SAS实现试验设计及处理病态数据的两个过程简介 402

第17章 与试验设计有关的SAS过程 402

17.1 有关SAS过程的重要应用 402

17.1.1 用SAS实现成组设计 402

17.1.2 用SAS实现单因素多水平设计 403

17.1.3 用SAS实现随机区组设计 404

17.1.4 用SAS实现拉丁方设计 405

17.1.5 用SAS实现2×2交叉设计 406

17.1.6 用SAS实现3×3交叉设计 408

17.1.7 用SAS实现析因设计 409

17.1.8 用SAS实现含区组因素的析因设计 410

17.1.9 用SAS实现平衡不完全随机区组设计 412

17.1.10 用SAS实现分式析因设计 413

17.2 有关SAS过程的功能比较 414

17.2.1 PLAN过程简介 414

17.2.2 FACTEX过程简介 417

17.2.3 OPTEX过程简介 419

17.2.4 三个SAS过程的功能比较 421

第18章 ORTHOREG和QUANTREG过程处理病态数据的效果展示 422

18.1 用ORTHOREG过程拟合病态数据 422

18.1.1 实例及用ORTHOREG过程分析 422

18.1.2 实例及用GLM过程分析 424

18.1.3 实例及用REG过程分析 426

18.1.4 小结 428

18.2 用QUANTREG过程拟合病态数据 429

18.2.1 实例及探索性分析 429

18.2.2 采用REG过程在因变量分别服从对称分布的两个总体和全部数据中建立二重线性回归方程 433

18.2.3 采用QUANTREG过程在因变量分别服从对称分布的两个总体和全部数据中建立二重线性回归方程 435

18.2.4 因变量y的取值中未包含异常值时REG与QUANTREG两过程的表现的比较 436

18.2.5 因变量y的取值中包含异常值时REG与QUANTREG两过程的表现的比较 436

18.2.6 小结 437

附录 胡良平统计学专著及配套软件简介 438

参考文献 444