《SAS编程技术教程 第2版》PDF下载

  • 购买积分:15 如何计算积分?
  • 作  者:朱世武编著
  • 出 版 社:北京:清华大学出版社
  • 出版年份:2013
  • ISBN:9787302333098
  • 页数:482 页
图书介绍:本书是一本SAS编程技术教程,是作者多年来利用SAS软件进行教学与科研的工作结晶。内容全面、系统性强、层次明确、语言简练。

第1章 SAS软件入门 1

1.1 SAS软件功能模块 1

1.2 SAS工作界面 3

1.2.1 工具栏 3

1.2.2 命令行窗口 4

1.2.3 功能窗口 4

1.3 SAS窗口操作 8

1.3.1 资源管理器窗口操作 8

1.3.2 程序编辑窗口操作 9

1.3.3 功能键窗口操作 10

1.3.4 数据集导入和导出 10

习题1 15

第2章 SAS编程基础 16

2.1 SAS语言组件 16

2.1.1 SAS文件 16

2.1.2 SAS外部文件 16

2.1.3 DBMS文件 17

2.1.4 SAS语言元素 17

2.1.5 SAS宏工具 17

2.2 SAS文件系统 17

2.2.1 逻辑库 17

2.2.2 数据集 19

2.2.3 数据文件 22

2.2.4 数据视图 23

2.3 SAS词段和SAS名称 25

2.3.1 SAS词段 25

2.3.2 SAS名称命名规则 26

2.4 SAS程序 26

2.4.1 书写规则 27

2.4.2 数据步 27

2.4.3 过程步 28

2.5 SAS语言元素 28

2.5.1 语句 28

2.5.2 SAS系统选项 29

2.5.3 数据集选项 29

2.6 SAS变量 30

2.6.1 变量类型 30

2.6.2 变量属性 31

2.6.3 变量列表及其缩写规则 31

2.6.4 创建变量 32

2.6.5 输入输出格式 33

2.6.6 自动变量 34

2.7 表达式 35

2.7.1 引用SAS常数 36

2.7.2 SAS算符 37

习题2 40

第3章 数据导入 41

3.1 菜单导入数据 41

3.2 数据步导入原始数据 41

3.2.1 原始数据呈现形式 41

3.2.2 使用INPUT语句读入原始数据 42

3.2.3 列方式输入 43

3.2.4 列表方式输入 44

3.2.5 格式化方式输入 47

3.2.6 命名方式输入 49

3.3 指针控制 50

3.3.1 列行指针控制 51

3.3.2 使用行固定说明符 52

3.3.3 读完数据后的指针位置 53

3.3.4 多个数据行构成一个观测 55

3.3.5 指针超过行结尾 56

3.3.6 指针移到第一列之前 57

3.4 过程步导入数据 57

3.4.1 句法与选项说明 57

3.4.2 导入程序模板 58

3.5 使用锐思RESSET数据库 59

3.5.1 下载SAS数据集 59

3.5.2 使用RESSET数据库系统自动产生SAS程序 62

习题3 63

第4章 数据步数据集操作 64

4.1 创建数据集语句DATA 64

4.1.1 语句格式 65

4.1.2 选项说明 65

4.1.3 特殊数据集名 66

4.1.4 一个DATA语句下多个数据集名 67

4.2 数据行引导语句CARDS与CARDS4 67

4.2.1 CARDS语句 67

4.2.2 CARDS4语句 68

4.3 输出语句PUT 68

4.3.1 语句格式 68

4.3.2 选项说明 69

4.3.3 应用举例 69

4.3.4 指针控制 70

4.3.5 列方式输出 72

4.3.6 列表方式输出 73

4.3.7 格式化输出 74

4.4 读入已存在SAS数据集语句SET 74

4.4.1 语句格式 74

4.4.2 选项说明 75

4.4.3 应用举例 75

4.5 横向合并数据集语句MERGE 80

4.5.1 语句格式 80

4.5.2 选项说明 80

4.5.3 应用举例 80

4.6 BY语句 81

4.6.1 语句格式 81

4.6.2 选项说明 82

4.6.3 BY语句概念 82

4.6.4 FIRST.变量和LAST.变量 82

4.7 删除变量语句DROP与保留变量语句KEEP 82

4.7.1 DROP语句 82

4.7.2 KEEP语句 83

4.7.3 DROP和KEEP语句使用规则 84

4.7.4 数据集选项DROP=和KEEP=使用规则 84

4.8 更改变量名语句RENAME与保留数值语句RETAIN 85

4.8.1 更改变量名语句RENAME 85

4.8.2 保留数值语句RETAIN 86

4.9 输出外部文件语句FILE 89

4.9.1 语句格式 89

4.9.2 应用举例 92

4.10 定义外部数据文件语句INFILE 92

4.10.1 语句格式 92

4.10.2 导入外部数据文件的标准程序 95

4.11 更新数据语句UPDATE 96

4.11.1 语句格式 96

4.11.2 选项说明 97

4.11.3 MERGE语句和UPDATE语句的比较 97

4.11.4 应用举例 97

4.12 修改数据语句MODIFY 99

4.12.1 语句格式 99

4.12.2 选项说明 100

4.12.3 数据集访问方式 100

4.12.4 修改观测 101

4.12.5 与UPDATE等语句的比较 102

4.12.6 应用举例 102

4.13 数据集加密 105

4.13.1 数据集的三种密码 105

4.13.2 应用举例 105

4.14 数据导出 107

4.14.1 菜单导出数据 107

4.14.2 过程步导出数据 107

4.14.3 PUT和FILE语句组合输出外部TXT文本 108

4.15 SAS处理流程 110

4.15.1 SAS处理流程 110

4.15.2 DATA步处理流程 110

4.15.3 DATA步的运行顺序 115

习题4 117

第5章 DATA步数据处理 124

5.1 基本语句 124

5.1.1 赋值语句 124

5.1.2 累加语句 126

5.2 观测的选择与输出 128

5.2.1 IF语句 128

5.2.2 WHERE语句 129

5.2.3 WHERE和IF语句的比较 131

5.2.4 DELETE语句 132

5.2.5 OUTPUT语句 132

5.3 变量属性控制 135

5.3.1 INFORMAT语句与FORMAT语句 135

5.3.2 LENGTH语句与LABEL语句 137

5.3.3 变量类型转换 141

5.4 DO语句及循环控制 144

5.4.1 简单DO语句 144

5.4.2 循环DO语句 145

5.4.3 DO OVER语句 147

5.4.4 DO WHILE语句 148

5.4.5 DO UNTIL语句 148

5.5 选择控制语句SELECT 149

5.5.1 语句格式 149

5.5.2 应用举例 149

5.6 数组 150

5.6.1 显式下标数组语句 151

5.6.2 引用显式下标数组元素 153

5.6.3 隐含下标数组语句 155

5.6.4 引用隐含下标数组元素 156

5.7 GO TO语句与语句标号 158

5.7.1 GO TO语句 158

5.7.2 语句标号 160

5.8 LINK语句 160

5.8.1 语句格式 160

5.8.2 LINK语句与GOTO语句的差别 162

5.9 STOP语句与ABORT语句 162

5.9.1 STOP语句 162

5.9.2 ABORT语句 162

5.10 REMOVE语句与REPLACE语句 166

5.10.1 REMOVE语句 166

5.10.2 REPLACE语句 167

5.11 MISSING语句 168

5.11.1 语句格式 169

5.11.2 应用举例 169

5.12 其他语句 169

5.12.1 LIST语句 169

5.12.2 PUT语句与LIST语句比较 170

5.12.3 CALL语句 170

5.12.4 CALL语句调用子程序 170

5.12.5 NULL语句 171

5.12.6 ERROR语句 172

5.12.7 REFURN语句 173

5.12.8 CONTINUE语句与LEAVE语句 174

习题5 176

第6章 常用函数 181

6.1 SAS函数定义 181

6.1.1 函数定义 181

6.1.2 函数用法 181

6.2 SAS函数自变量与结果 182

6.2.1 函数自变量 182

6.2.2 函数结果 183

6.2.3 显示函数值的简单方法 184

6.3 SAS函数分类 184

6.4 日期时间函数 185

6.4.1 日期时间函数 185

6.4.2 应用举例 186

6.5 概率分布函数 189

6.5.1 标准正态分布 189

6.5.2 卡方分布 190

6.5.3 伽马分布 190

6.5.4 贝塔分布 190

6.5.5 F分布 191

6.5.6 t分布 191

6.5.7 二项分布 191

6.5.8 泊松分布 191

6.5.9 负二项分布 192

6.5.10 超几何分布 192

6.6 分位数函数 193

6.6.1 卡方分布分位数 193

6.6.2 贝塔分布分位数 193

6.6.3 F分布分位数 193

6.6.4 t分布分位数 193

6.6.5 正态分布分位数 194

6.6.6 伽马分布分位数 194

6.7 样本统计函数 194

6.8 随机数函数 196

6.8.1 正态分布 196

6.8.2 均匀分布 197

6.8.3 二项分布 198

6.8.4 伽马分布 198

6.8.5 泊松分布 199

6.8.6 贝塔分布 199

6.8.7 指数分布 199

6.8.8 几何分布 200

6.8.9 极值分布 200

6.8.10 随机数函数自变量SEED 201

6.9 SAS CALL子程序 201

6.9.1 CALL子程序类型 201

6.9.2 随机数子程序 202

习题6 203

第7章 通用语句 205

7.1 全局通用语句 205

7.1.1 注释语句 205

7.1.2 DM语句与X语句 206

7.1.3 TITLE语句与FOOTNOTE语句 208

7.1.4 RUN语句与ENDSAS语句 209

7.1.5 LIBNAME语句 210

7.1.6 FILENAME语句 212

7.1.7 %INCLUDE语句 215

7.1.8 %RUN语句与%LIST语句 217

7.1.9 MISSING语句 217

7.1.10 PAGE语句与SKIP语句 218

7.1.11 OPTIONS语句与GOPTIONS语句 218

7.2 过程步通用语句 220

7.2.1 PROC语句 220

7.2.2 VAR语句与MODLE语句 222

7.2.3 ID语句与WHERE语句 222

7.2.4 CLASS语句与BY语句 224

7.2.5 OUTPUT语句与QUIT语句 225

7.2.6 FORMAT语句与ATTRIB语句 226

7.2.7 LABEL语句 227

习题7 228

第8章 变量输入输出格式 230

8.1 输入格式 230

8.1.1 输入格式形式 230

8.1.2 输入格式使用方法 231

8.1.3 输入格式类型 232

8.1.4 数值变量输入格式 232

8.1.5 字符变量输入格式 235

8.2 输出格式 237

8.2.1 输出格式形式 237

8.2.2 输出格式使用方法 237

8.2.3 输出格式类型 238

8.2.4 数值变量输出格式 239

8.2.5 字符变量输出格式 241

8.3 日期时间存储方式 242

8.3.1 SAS日期值存储方式 242

8.3.2 SAS日期时间值存储方式 243

8.4 日期时间输入格式 243

8.4.1 日期时间输入格式 243

8.4.2 应用举例 244

8.5 日期时间输出格式 244

8.5.1 日期时间输出格式 244

8.5.2 应用举例 249

8.6 缺失值处理 251

8.6.1 读入含缺失值的数据 251

8.6.2 系统产生的缺失值 252

习题8 252

第9章 输出控制 254

9.1 输出窗口与内容 254

9.2 日志输出控制 254

9.2.1 日志输出信息类型 254

9.2.2 日志输出信息控制 255

9.2.3 日志输出地点 255

9.2.4 定制日志格式 256

9.2.5 应用举例 256

9.3 运行结果输出控制 256

9.3.1 定制输出格式 257

9.3.2 运行结果输出地点 257

9.3.3 应用举例 258

9.4 图形存储利用与输出 258

9.4.1 图形存储 258

9.4.2 GREPLAY过程 259

9.4.3 输出其他格式图形文件 260

9.5 输出传送系统 261

9.5.1 ODS功能 261

9.5.2 ODS对象与传送目标 261

9.5.3 ODS语句 262

9.5.4 传送目标控制 262

9.5.5 选择输出对象 267

习题9 268

第10章 数据管理 271

10.1 数据集排序 271

10.1.1 排序过程句法 271

10.1.2 PROC SORT语句 271

10.1.3 BY语句 272

10.1.4 应用举例 272

10.2 数据集转置 273

10.2.1 转置过程句法 273

10.2.2 PROC TRANSPOSE语句 273

10.2.3 VAR语句和ID语句 274

10.2.4 应用举例 274

10.3 添加观测 276

10.3.1 APPEND过程句法 277

10.3.2 选项说明 277

10.3.3 应用举例 277

习题10 277

第11章 统计量计算 279

11.1 相关性过程 279

11.1.1 相关过程句法 279

11.1.2 PROC CORR语句 280

11.1.3 其他语句 280

11.1.4 应用举例 281

11.2 频数过程 283

11.2.1 频数过程句法 283

11.2.2 PROC FREQ语句 283

11.2.3 TABLES语句 284

11.2.4 WEIGHT语句 286

11.2.5 BY语句 286

11.2.6 OUTPUT语句 286

11.2.7 应用举例 286

11.3 均值过程 288

11.3.1 均值过程句法 288

11.3.2 PROC MEANS语句 289

11.3.3 其他语句 290

11.3.4 应用举例 292

11.4 单变量过程 295

11.4.1 单变量过程句法 295

11.4.2 PROC UNIVARIATE语句 295

11.4.3 其他语句 296

11.4.4 应用举例 298

习题11 301

第12章 制表与绘图 303

12.1 制表过程 303

12.1.1 制表过程句法 303

12.1.2 TABLE语句 304

12.1.3 应用举例 304

12.2 作图过程 319

12.2.1 作图过程句法 319

12.2.2 PLOT语句 319

12.2.3 SYMBOL语句 320

12.2.4 AXIS语句 320

12.2.5 应用举例 320

12.3 图表过程 329

12.3.1 图表过程句法 329

12.3.2 分类变量及类别 329

12.3.3 选择分析变量和统计量 330

12.3.4 应用举例 331

习题12 337

第13章 SQL 339

13.1 SQL过程简介 339

13.2 查询语句 340

13.2.1 SELECT子句 341

13.2.2 WHERE子句 345

13.2.3 使用汇总函数 349

13.2.4 GROUP BY子句 352

13.2.5 HAVING子句 353

13.2.6 ORDER BY子句 355

13.3 JOIN连接查询 357

13.3.1 内部连接查询 358

13.3.2 外部连接查询 362

13.3.3 JOIN连接和MERGE语句的比较 364

13.4 子查询 367

13.4.1 简单子查询 367

13.4.2 混合子查询 368

13.4.3 子查询与JOIN连接的使用 369

13.5 合并查询 369

13.5.1 SET算符综述 369

13.5.2 由多个查询产生非重复观测(UNION算符) 370

13.5.3 产生只属于第一个查询的观测(EXCEPT算符) 371

13.5.4 从多个查询中产生公共部分(INTERSECT算符) 372

13.5.5 直接连接查询结果(OUTER UNION算符) 373

13.5.6 特殊查询合并方式 374

13.6 创建与更新表 375

13.6.1 创建表 375

13.6.2 在表中插入行 378

13.6.3 对表的其他操作 379

13.7 创建和使用视图功能 382

13.7.1 建立和描述视图 382

13.7.2 更新视图 384

13.7.3 删除视图 384

13.7.4 SQL视图过程技巧 384

习题13 385

第14章 SQL过程编程 388

14.1 使用PROC SQL选项来建立和调试查询 388

14.1.1 使用INOBS和OUTOBS减少运行时间 388

14.1.2 用LOOPS选项来限制反复 389

14.1.3 使用NOEXEC选项和VALIDATE语句检查语法 389

14.1.4 用FEEDBACK选项展开SELECT 389

14.1.5 使用STIMER选项计时 390

14.1.6 使用RESET语句重置PROC SQL选项 391

14.2 优化查询 392

14.2.1 使用索引优化查询 392

14.2.2 在SET算符操作中使用关键词ALL 392

14.2.3 创建表和视图时不使用ORDER BY子句 393

14.2.4 使用线内视图来代替临时表 393

14.2.5 比较子查询和连接 393

14.2.6 连接表时使用WHERE(ON)表达式 393

14.3 用表词典来访问SAS系统信息 393

14.3.1 表词典概念 393

14.3.2 使用DICTIONARY.TABLES 394

14.3.3 使用DICTIONARY.COLUMNS 395

14.3.4 使用表视图技巧 396

14.4 在PROC SQL中使用宏工具 396

14.4.1 在PROC SQL中创建宏变量 396

14.4.2 由查询结果的第一个观测创建宏变量 397

14.4.3 从汇总函数结果中创建宏变量 397

14.4.4 创建多个宏变量 398

14.4.5 在宏变量中实现连接 399

14.4.6 使用宏创建表 399

14.4.7 使用PROC SQL自动宏变量 400

14.5 PROC SQL使用SAS输出传输系统ODS 401

习题14 401

第15章 IML编程技术 402

15.1 概述 402

15.1.1 SAS/IML软件特点 402

15.1.2 一个简单IML交互程序 402

15.2 理解IML语言 403

15.2.1 定义矩阵 403

15.2.2 由矩阵标识创建矩阵 403

15.2.3 语句类型 405

15.3 线性回归IML模块 408

15.3.1 解方程组 408

15.3.2 线性回归IML模块程序 409

15.3.3 回归结果作图 411

15.4 矩阵操作 411

15.4.1 输入数据创建矩阵标识 411

15.4.2 使用赋值语句创建矩阵 412

15.4.3 使用矩阵表达式 414

15.4.4 利用行列标展现矩阵 417

15.4.5 缺失值运算举例 418

15.5 IML编程语句 418

15.5.1 IF-THEN语句 418

15.5.2 DO组语句 419

15.5.3 循环语句 419

15.5.4 转移语句 420

15.5.5 创建和运行模块语句 421

15.5.6 停止执行 428

15.6 SAS数据集操作 429

15.6.1 打开SAS数据集 429

15.6.2 编辑SAS数据集 429

15.6.3 SAS数据集排序 430

15.6.4 由SAS数据集创建矩阵 431

15.6.5 由矩阵创建SAS数据集 432

15.6.6 与DATA步的比较 433

15.7 访问外部文件 433

15.7.1 打开外部文件 433

15.7.2 读入外部文件 434

15.7.3 生成外部文件 435

15.7.4 关闭打开的外部文件 436

习题15 437

第16章 宏编程技术 440

16.1 宏变量 440

16.1.1 定义宏变量 441

16.1.2 引用与显示宏变量 441

16.1.3 宏变量范围 445

16.2 宏 446

16.2.1 定义宏 446

16.2.2 调用宏 447

16.2.3 改变宏内宏变量的值 447

16.3 宏参数 448

16.3.1 创建宏参数 448

16.3.2 宏参数赋值 449

16.3.3 宏调用宏 449

16.3.4 条件表达式 451

16.3.5 生成重复文本 452

16.4 宏表达式 452

16.4.1 宏处理器如何处理算术表达式 453

16.4.2 宏处理器如何处理逻辑表达式 453

16.5 数据步接口程序 454

16.5.1 数据步接口程序 454

16.5.2 应用举例 454

16.6 宏程序语句和宏函数 455

16.6.1 宏程序语句 455

16.6.2 宏函数 456

习题16 457

附录A SAS函数与功能 460

附录B IML函数与语句 468

附录C PROC SQL语句格式表 475

附录D PROC SQL功能及对应语句 477

附录E PROC SQL元素基本概念 478

参考文献 482