高级R语言编程指南(原书第2版)
作 者:[美] 哈德利·威克汉姆(Hadley Wickham) 著,潘文捷,许金炜,李洪成 译
出版时间:2020
内容简介
《高级R语言编程指南(原书第2版)》为解决各种R语言编程问题提供了非常有用的工具和技术,帮助你少走弯路。《高级R语言编程指南(原书第2版)》中阐释了R语言的基础,包括三种基本的编程范式(函数式编程、面向对象编程和元编程),以及用于调试和优化代码的强大技术,并展示了许多必备的技巧,通过它们可以创建在各个场景中使用的优质代码。《高级R语言编程指南(原书第2版)》由R语言领军人物Hadley Wickham亲笔撰写,深入阐释R语言编程的核心技术、工具,并提供大量实用编程技巧,可以帮助你了解R语言底层的工作方式,提升R语言编程技能,有效解决实际工作中的各种R语言编程问题。《高级R语言编程指南(原书第2版)》分为五部分,首部分(第2-8章)详细介绍R语言基础知识,包括名字和取值、向量、子集选取、控制流、函数、环境、条件;第二部分(第9-11章)介绍函数式编程,包括泛函、函数工厂和函数运算符;第三部分(第12-16章)介绍面向对象编程,包括基础类型、S3、R6、S4,以及各系统之间的权衡;第四部分(第17-21章)介绍元编程技术,包括表达式、准引用、计算、翻译R代码等;第五部分(第22-25章)介绍R的高级技术,包括调试、衡量性能、改进性能、使用C++重写R代码。《高级R语言编程指南(原书第2版)》展示了R的特别之处,为想深入学习R、理解R语言的初学者奠定了基础。中级R程序员则可以通过《高级R语言编程指南(原书第2版)》更深入地学习解决各种问题的新策略。而其他语言的程序员可以通过《高级R语言编程指南(原书第2版)》细致地了解R语言并理解R语言的运行方式。《高级R语言编程指南(原书第2版)》的更新如下:首部分增加三章新的内容:名字和取值、控制流、条件。全面介绍面向对象编程,涵盖S3、R6、S4,以及如何在它们中进行选择。更深入地介绍元编程,包括新的tidy评估框架。使用新的添加包,如rlang(http://rlang.r-lib.org)和purrr(http.//purrr.tidyverse.org/)进行函数式编程。添加包rlang为低级操作提供了简洁的接口。
目录
译者序
前言
第1章 绪论
1.1 为什么选择R语言
1.2 本书的目标读者
1.3 通过本书你可以学到什么
1.4 通过本书你将不能学到什么
1.5 元技术
1.6 推荐阅读
1.7 获取帮助
1.8 致谢
1.9 约定
1.10 声明
第一部分 基础知识
第2章 名字和取值
2.1 本章简介
2.2 绑定基础
2.3 复制后修改
2.4 对象大小
2.5 原位修改
2.6 解除绑定和垃圾回收
2.7 小测验答案
第3章 向量
3.1 本章简介
3.2 原子向量
3.3 属性
3.4 S3原子向量
3.5 列表
3.6 数据框和tibble
3.7 NULL
3.8 小测验答案
第4章 子集选取
4.1 本章简介
4.2 选择多个元素
4.3 选择一个元素
4.4 子集选取与赋值
4.5 应用
4.6 小测验答案
第5章 控制流
5.1 本章简介
5.2 选择
5.3 循环
5.4 小测验答案
第6章 函数
6.1 本章简介
6.2 函数基础
6.3 函数组合
6.4 词法作用域
6.5 惰性求值
6.6 参数
6.7 退出函数
6.8 函数形式
6.9 小测验答案
第7章 环境
7.1 本章简介
7.2 环境基础
7.3 环境递归
7.4 特殊环境
7.5 调用堆栈
7.6 模拟数据结构
7.7 小测验答案
第8章 条件
8.1 本章简介
8.2 信号条件
8.3 忽视条件
8.4 处理条件
8.5 自定义条件
8.6 应用
8.7 小测验答案
第二部分 函数式编程
第9章 泛函
9.1 本章简介
9.2 第一个泛函:map()
9.3 purrr风格
9.4 map变体
9.5 reduce系列
9.6 判断泛函
9.7 基础泛函
第10章 函数工厂
10.1 本章简介
10.2 工厂基础
10.3 图形工厂
10.4 统计工厂
10.5 函数工厂+泛函
第11章 函数运算符
11.1 本章简介
11.2 现有的函数运算符
11.3 案例学习:生成你自己的函数运算符
第三部分 面向对象编程
第12章 基础类型
12.1 本章简介
12.2 基础对象与OO对象
12.3 基础类型
第13章 S3
13.1 本章简介
13.2 基础
13.3 类
13.4 泛型和方法
13.5 对象风格
13.6 继承
13.7 分派细节
第14章 R6
14.1 本章简介
14.2 类和方法
14.3 控制访问
14.4 引用语义
14.5 为什么是R6
第15章 S4
15.1 本章简介
15.2 基础
15.3 类
15.4 泛型和方法
15.5 方法分派
15.6 S4和S3
第16章 权衡
16.1 本章简介
16.2 S4与S3
16.3 R6与S3
……
第四部分 元编程
第五部分 高级技术
参考文献
索引
书籍下载: