注重体验与质量的电子书资源下载网站
分类于: 编程语言 计算机基础 互联网 云计算&大数据
简介
图灵程序设计丛书:学习R 豆 8.0分
资源最后更新于 2020-07-12 01:54:09
作者:[美] Richard Cotton
译者:刘 军
出版社:人民邮电出版社
出版日期:2014-01
ISBN:9787115351708
文件格式: pdf
标签: R 数据分析 R语言 编程 统计学 数据挖掘 计算机 统计
简介· · · · · ·
本书分为上下两部分,旨在指导你如何使用R,并提供练习的机会。上半部分主要介绍R的技术细节和使用技巧。每章都简要介绍了一组不同的数据类型(例如第4章介绍向量、矩阵和数组)或概念(例如第8章介绍分支和循环)。下半部分更侧重实践,展示了从输入数据到发布结果这一标准的数据分析流程。
即使你没有任何编程基础,也能顺利阅读本书。
编写简单的R程序,知道R语言能做什么
使用向量、数组、列表、数据框和字符串等数据类型
掌握条件语句以及分支和循环控制语句
应用R的扩展包,将你自己的工作成果打包发给其他人
清理从各种来源导入的数据
通过可视化和汇总统计理解数据
使用统计模型传递关于数据的定量判断并进行预测
了解编写数据分析代码时出现错误的应对措施
目录
译者序 XII
前言 XIII
第一部分 R语言
第1章 简介 2
1.1 本章目标 2
1.2 R是什么 2
1.3 安装R 3
1.4 选择一个IDE 4
1.4.1 Emacs+ESS 4
1.4.2 Eclipse/Architect 4
1.4.3 RStudio 5
1.4.4 Revolution-R 5
1.4.5 Live-R 5
1.4.6 其他IDE和编辑器 6
1.5 你的第一个程序 6
1.6 如何从R中获得帮助 7
1.7 安装其他相关软件 9
1.8 小结 9
1.9 知识测试:问题 10
1.10 知识测试:练习 10
第2章 科学计算器 11
2.1 本章目标 11
2.2 数学运算符和向量 11
2.3 变量赋值 15
2.4 特殊数字 17
2.5 逻辑向量 18
2.6 小结 20
2.7 知识测试:问题 20
2.8 知识测试:练习 20
第3章 检查变量和工作区 22
3.1 本章目标 22
3.2 类 22
3.3 不同类型的数字 23
3.4 其他通用类 24
3.5 检查和更改类 26
3.6 检查变量 29
3.7 工作区 32
3.8 小结 33
3.9 知识测试:问题 33
3.10 知识测试:练习 34
第4章 向量、矩阵和数组 35
4.1 本章目标 35
4.2 向量 35
4.2.1 序列 37
4.2.2 长度 38
4.2.3 命名 39
4.2.4 索引向量 39
4.2.5 向量循环和重复 41
4.3 矩阵和数组 43
4.3.1 创建数组和矩阵 43
4.3.2 行、列和维度 45
4.3.3 行名、列名和维度名 46
4.3.4 索引数组 47
4.3.5 合并矩阵 47
4.3.6 数组算术 48
4.4 小结 50
4.5 知识测试:问题 50
4.6 知识测试:练习 51
第5章 列表和数据框 52
5.1 本章目标 52
5.2 列表 52
5.2.1 创建列表 52
5.2.2 原子变量和递归变量 54
5.2.3 列表的维度和算术运算 55
5.2.4 索引列表 56
5.2.5 向量和列表之间的转换 58
5.2.6 组合列表 60
5.3 NULL 61
5.4 成对列表 64
5.5 数据框 65
5.5.1 创建数据框 65
5.5.2 索引数据框 68
5.5.3 基本数据框操作 69
5.6 小结 71
5.7 知识测试:问题 71
5.8 知识测试:练习 72
第6章 环境和函数 73
6.1 本章目标 73
6.2 环境 73
6.3 函数 76
6.3.1 创建和调用函数 76
6.3.2 向其他函数传递和接收函数 80
6.3.3 变量的作用域 82
6.4 小结 84
6.5 知识测试:问题 84
6.6 知识测试:练习 84
第7章 字符串和因子 86
7.1 本章目标 86
7.2 字符串 86
7.2.1 创建和打印字符串 87
7.2.2 格式化数字 88
7.2.3 特殊字符 90
7.2.4 更改大小写 91
7.2.5 截取字符串 91
7.2.6 分割字符串 92
7.2.7 文件路径 93
7.3 因子 94
7.3.1 创建因子 94
7.3.2 更改因子水平 96
7.3.3 去掉因子水平 96
7.3.4 有序因子 97
7.3.5 将连续变量转换为类别 98
7.3.6 将类别变量转换为连续变量 99
7.3.7 生成因子水平 100
7.3.8 合并因子 100
7.4 小结 101
7.5 知识测试:问题 101
7.6 知识测试:练习 101
第8章 流程控制和循环 103
8.1 本章目标 103
8.2 流程控制 103
8.2.1 if和else 103
8.2.2 矢量化的if 105
8.2.3 多个分支 106
8.3 循环 108
8.3.1 重复循环 108
8.3.2 while循环 110
8.3.3 for循环 111
8.4 小结 113
8.5 知识测试:问题 113
8.6 知识测试:练习 113
第9章 高级循环 115
9.1 本章目标 115
9.2 replication 115
9.3 遍历列表 116
9.4 遍历数组 122
9.5 多个输入的应用函数 124
9.6 拆分-应用-合并(Split-Apply-Combine) 126
9.7 plyr包 127
9.8 小结 130
9.9 知识测验:问题 130
9.10 知识测试:练习 131
第10章 包 133
10.1 本章目标 133
10.2 加载包 133
10.2.1 搜索路径 135
10.2.2 库和已安装的包 136
10.3 安装包 137
10.4 维护包 139
10.5 小结 139
10.6 知识测试:问题 140
10.7 知识测试:练习 140
第11章 日期和时间 141
11.1 本章目标 141
11.2 日期和时间类 141
11.2.1 POSIX日期和时间 142
11.2.2 Date类 143
11.2.3 其他日期类 144
11.3 日期与字符串的相互转换 144
11.3.1 解析日期 144
11.3.2 格式化日期 145
11.4 时区 145
11.5 日期和时间的算术运算 147
11.6 lubridate 149
11.7 小结 153
11.8 知识测试:问题 153
11.9 知识测试:练习 153
第二部分 数据分析工作流
第12章 获取数据 156
12.1 本章目标 156
12.2 内置的数据集 156
12.3 读取文本文件 157
12.3.1 CSV和制表符分隔(Tab-Delimited)文件 157
12.3.2 非结构化文本文件 161
12.3.3 XML和HTML文件 161
12.3.4 JSON和YAML文件 163
12.4 读取二进制文件 165
12.4.1 读取Excel文件 165
12.4.2 读取SAS、Stata、SPSS和MATLAB文件 167
12.4.3 读取其他文件类型 167
12.5 Web数据 168
12.5.1 拥有API的网站 168
12.5.2 抓取网页 169
12.6 访问数据库 171
12.7 小结 174
12.8 知识测试:问题 174
12.9 知识测试:练习 174
第13章 数据清理和转换 175
13.1 本章目标 175
13.2 清理字符串 175
13.3 操作数据框 180
13.3.1 添加和替换列 180
13.3.2 处理缺失值 181
13.3.3 在宽和长表格之间进行转换 182
13.3.4 使用SQL 183
13.4 排序 184
13.5 函数式编程 185
13.6 小结 188
13.7 知识测试:问题 188
13.8 知识测试:练习 189
第14章 探索和可视化 190
14.1 本章目标 190
14.2 汇总统计 190
14.3 三种绘图系统 194
14.4 散点图 195
14.4.1 第一种方法:base绘图法 195
14.4.2 第二种方法:lattice图形系统 200
14.4.3 第三种方法:ggplot2图形系统 207
14.5 线图 212
14.6 直方图 220
14.7 箱线图 232
14.8 条形图 236
14.9 其他的绘图包和系统 242
14.10 小结 243
14.11 知识测试:问题 243
14.12 知识测试:练习 244
第15章 分布与建模 245
15.1 本章目标 245
15.2 随机数 246
15.2.1 示例函数 246
15.2.2 从分布中抽样 247
15.3 分布 248
15.4 公式 248
15.5 第一个模型:线性回归 250
15.5.1 比较和更新模型 252
15.5.2 绘图和模型检查 257
15.6 其他模型类型 261
15.7 小结 262
15.8 知识测试:问题 263
15.9 知识测试:练习 263
第16章 程序设计 264
16.1 本章目标 264
16.2 信息、警告和错误 264
16.3 错误处理 267
16.4 调试 270
16.5 测试 273
16.5.1 RUnit 273
16.5.2 testthat 276
16.6 魔法 277
16.6.1 将字符串转换成代码 277
16.6.2 把代码转换成字符串 279
16.7 面向对象编程 280
16.7.1 S3类 281
16.7.2 引用类 282
16.8 小结 287
16.9 知识测试:问题 287
16.10 知识测试:练习 288
第17章 制作程序包 289
17.1 本章目标 289
17.2 为什么要创建软件包 289
17.3 先决条件 289
17.4 包目录结构 290
17.5 你的第一个包 291
17.6 为包撰写文档 293
17.7 检查和构建包 296
17.8 包的维护 297
17.9 小结 298
17.10 知识测试:问题 299
17.11 知识测试:练习 299
第三部分 附录
附录A 变量的属性 302
附录B R中其他可做的事情 305
附录C 问题答案 307
附录D 练习答案 315
参考文献 339
关于封面 341
前言 XIII
第一部分 R语言
第1章 简介 2
1.1 本章目标 2
1.2 R是什么 2
1.3 安装R 3
1.4 选择一个IDE 4
1.4.1 Emacs+ESS 4
1.4.2 Eclipse/Architect 4
1.4.3 RStudio 5
1.4.4 Revolution-R 5
1.4.5 Live-R 5
1.4.6 其他IDE和编辑器 6
1.5 你的第一个程序 6
1.6 如何从R中获得帮助 7
1.7 安装其他相关软件 9
1.8 小结 9
1.9 知识测试:问题 10
1.10 知识测试:练习 10
第2章 科学计算器 11
2.1 本章目标 11
2.2 数学运算符和向量 11
2.3 变量赋值 15
2.4 特殊数字 17
2.5 逻辑向量 18
2.6 小结 20
2.7 知识测试:问题 20
2.8 知识测试:练习 20
第3章 检查变量和工作区 22
3.1 本章目标 22
3.2 类 22
3.3 不同类型的数字 23
3.4 其他通用类 24
3.5 检查和更改类 26
3.6 检查变量 29
3.7 工作区 32
3.8 小结 33
3.9 知识测试:问题 33
3.10 知识测试:练习 34
第4章 向量、矩阵和数组 35
4.1 本章目标 35
4.2 向量 35
4.2.1 序列 37
4.2.2 长度 38
4.2.3 命名 39
4.2.4 索引向量 39
4.2.5 向量循环和重复 41
4.3 矩阵和数组 43
4.3.1 创建数组和矩阵 43
4.3.2 行、列和维度 45
4.3.3 行名、列名和维度名 46
4.3.4 索引数组 47
4.3.5 合并矩阵 47
4.3.6 数组算术 48
4.4 小结 50
4.5 知识测试:问题 50
4.6 知识测试:练习 51
第5章 列表和数据框 52
5.1 本章目标 52
5.2 列表 52
5.2.1 创建列表 52
5.2.2 原子变量和递归变量 54
5.2.3 列表的维度和算术运算 55
5.2.4 索引列表 56
5.2.5 向量和列表之间的转换 58
5.2.6 组合列表 60
5.3 NULL 61
5.4 成对列表 64
5.5 数据框 65
5.5.1 创建数据框 65
5.5.2 索引数据框 68
5.5.3 基本数据框操作 69
5.6 小结 71
5.7 知识测试:问题 71
5.8 知识测试:练习 72
第6章 环境和函数 73
6.1 本章目标 73
6.2 环境 73
6.3 函数 76
6.3.1 创建和调用函数 76
6.3.2 向其他函数传递和接收函数 80
6.3.3 变量的作用域 82
6.4 小结 84
6.5 知识测试:问题 84
6.6 知识测试:练习 84
第7章 字符串和因子 86
7.1 本章目标 86
7.2 字符串 86
7.2.1 创建和打印字符串 87
7.2.2 格式化数字 88
7.2.3 特殊字符 90
7.2.4 更改大小写 91
7.2.5 截取字符串 91
7.2.6 分割字符串 92
7.2.7 文件路径 93
7.3 因子 94
7.3.1 创建因子 94
7.3.2 更改因子水平 96
7.3.3 去掉因子水平 96
7.3.4 有序因子 97
7.3.5 将连续变量转换为类别 98
7.3.6 将类别变量转换为连续变量 99
7.3.7 生成因子水平 100
7.3.8 合并因子 100
7.4 小结 101
7.5 知识测试:问题 101
7.6 知识测试:练习 101
第8章 流程控制和循环 103
8.1 本章目标 103
8.2 流程控制 103
8.2.1 if和else 103
8.2.2 矢量化的if 105
8.2.3 多个分支 106
8.3 循环 108
8.3.1 重复循环 108
8.3.2 while循环 110
8.3.3 for循环 111
8.4 小结 113
8.5 知识测试:问题 113
8.6 知识测试:练习 113
第9章 高级循环 115
9.1 本章目标 115
9.2 replication 115
9.3 遍历列表 116
9.4 遍历数组 122
9.5 多个输入的应用函数 124
9.6 拆分-应用-合并(Split-Apply-Combine) 126
9.7 plyr包 127
9.8 小结 130
9.9 知识测验:问题 130
9.10 知识测试:练习 131
第10章 包 133
10.1 本章目标 133
10.2 加载包 133
10.2.1 搜索路径 135
10.2.2 库和已安装的包 136
10.3 安装包 137
10.4 维护包 139
10.5 小结 139
10.6 知识测试:问题 140
10.7 知识测试:练习 140
第11章 日期和时间 141
11.1 本章目标 141
11.2 日期和时间类 141
11.2.1 POSIX日期和时间 142
11.2.2 Date类 143
11.2.3 其他日期类 144
11.3 日期与字符串的相互转换 144
11.3.1 解析日期 144
11.3.2 格式化日期 145
11.4 时区 145
11.5 日期和时间的算术运算 147
11.6 lubridate 149
11.7 小结 153
11.8 知识测试:问题 153
11.9 知识测试:练习 153
第二部分 数据分析工作流
第12章 获取数据 156
12.1 本章目标 156
12.2 内置的数据集 156
12.3 读取文本文件 157
12.3.1 CSV和制表符分隔(Tab-Delimited)文件 157
12.3.2 非结构化文本文件 161
12.3.3 XML和HTML文件 161
12.3.4 JSON和YAML文件 163
12.4 读取二进制文件 165
12.4.1 读取Excel文件 165
12.4.2 读取SAS、Stata、SPSS和MATLAB文件 167
12.4.3 读取其他文件类型 167
12.5 Web数据 168
12.5.1 拥有API的网站 168
12.5.2 抓取网页 169
12.6 访问数据库 171
12.7 小结 174
12.8 知识测试:问题 174
12.9 知识测试:练习 174
第13章 数据清理和转换 175
13.1 本章目标 175
13.2 清理字符串 175
13.3 操作数据框 180
13.3.1 添加和替换列 180
13.3.2 处理缺失值 181
13.3.3 在宽和长表格之间进行转换 182
13.3.4 使用SQL 183
13.4 排序 184
13.5 函数式编程 185
13.6 小结 188
13.7 知识测试:问题 188
13.8 知识测试:练习 189
第14章 探索和可视化 190
14.1 本章目标 190
14.2 汇总统计 190
14.3 三种绘图系统 194
14.4 散点图 195
14.4.1 第一种方法:base绘图法 195
14.4.2 第二种方法:lattice图形系统 200
14.4.3 第三种方法:ggplot2图形系统 207
14.5 线图 212
14.6 直方图 220
14.7 箱线图 232
14.8 条形图 236
14.9 其他的绘图包和系统 242
14.10 小结 243
14.11 知识测试:问题 243
14.12 知识测试:练习 244
第15章 分布与建模 245
15.1 本章目标 245
15.2 随机数 246
15.2.1 示例函数 246
15.2.2 从分布中抽样 247
15.3 分布 248
15.4 公式 248
15.5 第一个模型:线性回归 250
15.5.1 比较和更新模型 252
15.5.2 绘图和模型检查 257
15.6 其他模型类型 261
15.7 小结 262
15.8 知识测试:问题 263
15.9 知识测试:练习 263
第16章 程序设计 264
16.1 本章目标 264
16.2 信息、警告和错误 264
16.3 错误处理 267
16.4 调试 270
16.5 测试 273
16.5.1 RUnit 273
16.5.2 testthat 276
16.6 魔法 277
16.6.1 将字符串转换成代码 277
16.6.2 把代码转换成字符串 279
16.7 面向对象编程 280
16.7.1 S3类 281
16.7.2 引用类 282
16.8 小结 287
16.9 知识测试:问题 287
16.10 知识测试:练习 288
第17章 制作程序包 289
17.1 本章目标 289
17.2 为什么要创建软件包 289
17.3 先决条件 289
17.4 包目录结构 290
17.5 你的第一个包 291
17.6 为包撰写文档 293
17.7 检查和构建包 296
17.8 包的维护 297
17.9 小结 298
17.10 知识测试:问题 299
17.11 知识测试:练习 299
第三部分 附录
附录A 变量的属性 302
附录B R中其他可做的事情 305
附录C 问题答案 307
附录D 练习答案 315
参考文献 339
关于封面 341