第一部分 项目1:非均匀骰子 3
第1章 R基础 3
1.1 R的用户界面 3
1.2 对象 7
1.3 函数 12
1.4 可放回抽样 14
1.5 编写自定义函数 16
1.6 参数 18
1.7 脚本 20
1.8 小结 22
第2章 R包与帮助文档 23
2.1 R包 23
2.1.1 install.packages 24
2.1.2 library 24
2.2 从帮助页面获取帮助 29
2.2.1 帮助页面的组成部分 30
2.2.2 获取更多帮助 33
2.3 小结 33
2.4 项目1总结 34
第二部分 项目2:玩扑克牌 37
第3章 R对象 37
3.1 原子型向量 38
3.1.1 双整型 39
3.1.2 整型 39
3.1.3 字符型 40
3.1.4 逻辑型 41
3.1.5 复数类型和原始类型 42
3.2 属性 43
3.2.1 名称属性 43
3.2.2 维度属性 44
3.3 矩阵 45
3.4 数组 46
3.5 类 47
3.5.1 日期与时间 48
3.5.2 因子 49
3.6 强制转换 51
3.7 列表 53
3.8 数据框 55
3.9 加载数据 57
3.10 保存数据 60
3.11 小结 61
第4章 R的记号体系 63
4.1 值的选取 63
4.1.1 正整数索引 64
4.1.2 负整数索引 66
4.1.3 零索引 67
4.1.4 空格索引 67
4.1.5 逻辑值索引 67
4.1.6 名称索引 68
4.2 发牌 68
4.3 洗牌 69
4.4 美元符号与双中括号 71
4.5 小结 74
第5章 对象改值 75
5.1 就地改值 75
5.2 逻辑值取子集 78
5.2.1 逻辑测试 78
5.2.2 布尔运算符 83
5.3 缺失信息 87
5.3.1 na.rm 87
5.3.2 is.na 88
5.4 小结 89
第6章 R的环境系统 90
6.1 环境 90
6.2 操作R环境 92
6.3 作用域规则 95
6.4 赋值 96
6.5 函数求值 96
6.6 闭包 104
6.7 小结 108
6.8 项目2总结 108
第三部分 项目3:老虎机 113
第7章 程序 113
7.1 策略 115
7.1.1 有序步骤 116
7.1.2 同类情况 117
7.2 if语句 118
7.3 else语句 121
7.4 查找表 127
7.5 代码注释 133
7.6 小结 135
第8章 S3 136
8.1 S3系统 137
8.2 属性 137
8.3 泛型函数 142
8.4 方法 143
8.5 类 148
8.6 S3与调试 149
8.7 S4和R5 150
8.8 小结 150
第9章 循环 151
9.1 期望值 151
9.2 expand.grid 153
9.3 for循环 158
9.4 while循环 164
9.5 repeat循环 164
9.6 小结 165
第10章 代码提速 166
10.1 向量化代码 166
10.2 如何编写向量化代码 168
10.3 如何在R中编写快速的for循环 173
10.4 向量化编程实战 174
10.5 小结 178
10.6 项目3总结 178
附录A 安装R和RStudio 181
附录B R包 185
附录C 更新R和R包 188
附录D 在R中加载和保存数据 189
附录E 调试R代码 203
关于作者 213
关于封面 213