本书共27章,分为上下两卷:上卷介绍SAS编程基础与使用方法,是广大程序员快速掌握SAS编程技术的简明开发教程;下卷阐述数据分析的关键基础知识并提供相应SAS代码实现,目的是激发读者兴趣,跨越传统编程与数据分析的鸿沟,从程序员华丽转身为数据科学家。书中演示代码力图简洁清晰地解释相关概念,追求大道至简。本书兼顾编程技术与数据分析,期许程序员、信息处理与统计分析人员以及对数据分析科学感兴趣的读者都能从本书中获益良多,循序渐进地掌握数据分析的要义和精髓,从数据中获取洞见与智慧。 巫银良SAS 中国研发中心技术总监,北京大学信息科学技术学院客座教授。主要负责SAS 中国研发中心大数据与可视化分析技术、可视化数据挖掘与机器学习,商业智能和移动应用等产品线的项目管理。毕业于北京大学,获理学学士和硕士学位。拥有近 20 年计算机行业研发和管理经验,在企业应用和商业分析领域有深厚的技术功底。专注于研发管理和项目实践,涉及领域包括人工智能、大数据与可视化分析、金融量化分析与自动交易、商业智能与互联网、大型商业软件研发管理等。 上 卷第1章 SAS语言入门 0021.1 语言概述 0051.2 编程环境 0101.3 SAS Studio编程 016第2章 数据集与DATA步 0322.1 SAS 逻辑库 0322.2 SAS 数据集 0362.3 DATA 步 0412.3.1 内嵌数据行或外部数据文件 0432.3.2 通过已有 SAS 数据集生成 0482.3.3 通过 PROC IMPORT 或 PROC SQL 生成 0512.4 DATA 步的运行机制 0542.4.1 编译阶段 0552.4.2 运行阶段 0562.5 DATA 步语句快速索引 057第3章 变量与表达式 0623.1 常量与变量 0623.1.1 变量长度与缺失值 0633.1.2 数值常量 0653.1.3 日期/时间/日期时间常量 0673.1.4 字符常量 0673.2 表达式 0683.2.1 运算符 0683.2.2 运算符优先顺序 0723.2.3 WHERE 语句特定运算符 0723.2.4 赋值语句 0733.2.5 累加赋值语句 0743.2.6 RETAIN 语句 075SAS技术内幕:从程序员到数据科学家3.3 SAS数组 0773.3.1 数组名称 0793.3.2 数组元素变量列表 0793.3.3 数组长度 0803.3.4 隐式下标变量 0803.3.5 多维数组 0813.3.6 临时数组 0823.3.7 数组排序 0833.3.8 注意事项 084第4章 流程控制 0874.1 DO-END语句块 0874.2 分支控制 0884.2.1 IF-THEN 分支控制 0884.2.2 ELSE-IF 多分支控制 0904.2.3 SELECT-WHEN 多分支控制 0904.3 循环控制 0914.3.1 指定次数的循环:DO-TO-BY 0914.3.2 指定条件的循环:DO-WHILE 与 DO-UNTIL0924.3.3 指定集合的循环:DO-OVER 0934.4 特殊的流程控制语句 0944.4.1 跳出循环语句:LEAVE 0944.4.2 继续循环语句:CONTINUE 0944.4.3 返回语句:RETURN 0954.4.4 中止执行语句:STOP 与 ABORT 0954.4.5 跳转语句:GOTO 与 LINK 096第 5章 函数封装 0995.1 LINK-RETURN 技术 1015.2 SAS宏函数封装 1035.3 FCMP函数 1055.4 系统函数速查 110第6章 SAS宏 1136.1 宏变量 1146.1.1 命名 1146.1.2 作用域 1146.1.3 系统宏 1156.1.4 宏代码调试 117目 录XIII6.1.5 宏表达式 1176.2 宏函数 119参数定义 1206.3 逻辑控制 1216.3.1 宏语句块 1216.3.2 条件分支 1216.3.3 循环控制 1216.4 系统宏函数 122第7章 DS2 1247.1 程序结构 1267.1.1 变量声明与类型 1267.1.2 程序实体作用域 1297.1.3 变量数组与标准数组 1307.1.4 系统方法与用户自定义方法 1317.2 数据程序 1367.3 包程序 1377.4 线程程序 143第8章 代码组织 1498.1 静态文件包含 1498.2 程序中动态扩展代码 1518.3 动态执行外部命令 153第9章 文件读写 1579.1 二进制文件读写 1579.2 文本文件读写 1599.3 顺序读取多个文件 1629.4 并行读取多个文件 1659.5 共享缓冲区读写 166第10章 按位运算 16810.1 按位运算 16810.2 实现方法 16910.3 按位运算应用 173第11章 扩展SAS功能 17711.1 通过 Module调用外部 DLL函数 17711.2 用 C 语言开发用户函数库 18211.2.1 准备64位 C 编译环境 182SAS技术内幕:从程序员到数据科学家11.2.2 开发用户自定义动态库 18311.3 PROTO 编写 C 代码或注册外部 DLL 184第12章 数据结构——数组 18712.1 数组 18712.1.1 DATA步数组 18712.1.2 FCMP 数组 18912.1.3 DS2 数组 19212.1.4 SAS宏数组 19312.2 数组应用:高精度数值计算 194第13章 数据结构——队列与堆栈 19613.1 队列 19613.1.1 函数版实现与示例 19613.1.2 宏版实现与示例 19913.2 堆栈 202函数版实现与示例 202第14章 数据结构——链表 20614.1 基础知识 20614.2 如何在 SAS 代码中内嵌 C 语言代码 20714.3 单向链表和双向链表 20914.4 链表应用:约瑟夫斯问题 216第15章 数据结构——二叉树 22115.1 PROTO 实现与封装 22115.2 FCMP二叉树实现 22715.3 二叉树应用:算术表达式求值 231第16章 数据结构——矩阵运算 23516.1 FCMP 矩阵运算 23616.2 DS2 矩阵运算 24316.3 矩阵应用:线性方程组求解 24616.4 矩阵应用:非线性方程组求解 248第17章 数据结构——图 25517.1 深度优先和广度优先遍历 25617.2 最短路径问题 26017.2.1 Dijkstra算法 26117.2.2 Bellman-Ford 算法 26317.2.3 Floyd-Warshall 算法 265目 录下 卷第18章 统计学基础 27018.1 数据特征度量 27018.1.1 集中趋势度量 27218.1.2 离散趋势度量 27418.1.3 分布特征度量 27718.1.4 置信区间、置信水平与 p-值 27918.2 统计学上的变量
阅读更多