《R语言迈向大数据之路》PDF下载

  • 购买积分:15 如何计算积分?
  • 作  者:洪锦魁,蔡桂宏著
  • 出 版 社:北京:清华大学出版社
  • 出版年份:2016
  • ISBN:9787302430056
  • 页数:484 页
图书介绍:本书是一本优秀的R语言入门读物,旨在帮助读者迅速构建起与数据分析相关的知识体系,并学习如何使用R软件实现数据分析方法。无论有无编程基础或数学基础,本书都能帮助读者成长为一名合格的数据分析师。本书全面介绍了来自统计分析、机器学习、人工智能等领域的多种数据分析算法,在讲解与之相关的R代码时,还讨论了这些算法的原理、优缺点与适用背景。本书按照由易到难的原则组织章节主题,读者将获得最好的阅读体验。通过阅读本书,读者将对R语言在数据分析领域的应用有一个全面的认识。这种认识不被特定行业所局限,任何行业的读者都能利用本书介绍的数据分析方法解决本行业的数据分析问题。

Chapter 01 基本概念 2

1-1 Big Data的起源 2

1-2 R语言之美 2

1-3 R语言的起源 2

1-4 R的运行环境 5

1-5 R的扩展 5

1-6 本书的学习目标 5

本章习题 6

Chapter 02 第一次使用R 8

2-1 第一次启动R 8

2-1-1 在Mac OS下启动R 8

2-1-2 在Mac OS下启动RStudio 8

2-1-3 在Windows环境中启动R和RStudio 9

2-2 认识RStudio环境 10

2-3 第一次使用R 12

2-4 R语言的对象设定 15

2-5 Workspace窗口 16

2-6 结束RStudio 18

2-7 保存工作成果 19

2-7-1 使用save()函数保存工作成果 19

2-7-2 使用save.image()函数保存Workspace 20

2-7-3 下载之前保存的工作 20

2-8 历史记录 21

2-9 程序注释 22

本章习题 24

Chapter 03 R的基本数学运算 28

3-1 对象命名原则 28

3-2 基本数学运算 28

3-2-1 四则运算 28

3-2-2 余数和整除 29

3-2-3 次方或平方根 29

3-2-4 绝对值 30

3-2-5 exp()与对数 30

3-2-6 科学符号e 31

3-2-7 圆周率与三角函数 32

3-2-8 四舍五入函数 32

3-2-9 近似函数 33

3-2-10 阶乘 34

3-3 R语言控制运算的优先级 34

3-4 无限大Infinity 35

3-5 Not a Number(NaN) 36

3-6 Not Available(NA) 37

本章习题 39

Chapter 04 向量对象运算 44

4-1 数值型的向量对象 44

4-1-1 建立规则型的数值向量对象应使用序列符号 44

4-1-2 简单向量对象的运算 45

4-1-3 建立向量对象函数seq() 46

4-1-4 连接向量对象函数c() 47

4-1-5 重复向量对象函数rep() 48

4-1-6 numeric()函数 48

4-1-7 程序语句跨行的处理 49

4-2 常见向量对象的数学运算函数 50

4-3 考虑Inf、-Inf、NA的向量运算 53

4-4 R语言的字符串数据的属性 54

4-5 探索对象的属性 55

4-5-1 探索对象元素的属性 55

4-5-2 探索对象的结构 56

4-5-3 探索对象的数据类型 57

4-6 向量对象元素的存取 57

4-6-1 使用索引取得向量对象的元素 57

4-6-2 使用负索引挖掘向量对象内的部分元素 58

4-6-3 修改向量对象元素值 59

4-6-4 认识系统内建的数据集letters和LETTERS 60

4-7 逻辑向量(Logical Vector) 61

4-7-1 基本应用 61

4-7-2 对Inf、-Inf和缺失值NA的处理 63

4-7-3 多组逻辑表达式的应用 64

4-7-4 NOT表达式 65

4-7-5 逻辑值TRUE和FALSE的运算 65

4-8 不同长度向量对象相乘的应用 66

4-9 向量对象的元素名称 67

4-9-1 建立简单含元素名称的向量对象 67

4-9-2 names()函数 67

4-9-3 使用系统内建的数据集islands 68

本章习题 71

Chapter 05 处理矩阵与更高维数据 78

5-1 矩阵Matrix 78

5-1-1 建立矩阵 78

5-1-2 认识矩阵的属性 79

5-1-3 将向量组成矩阵 81

5-2 取得矩阵元素的值 82

5-2-1 矩阵元素的取得 82

5-2-2 使用负索引取得矩阵元素 83

5-3 修改矩阵的元素值 84

5-4 降低矩阵的维度 86

5-5 矩阵的行名和列名 87

5-5-1 取得和修改矩阵对象的行名和列名 88

5-5-2 dimnames()函数 89

5-6 将行名或列名作为索引 90

5-7 矩阵的运算 91

5-7-1 矩阵与一般常数的四则运算 91

5-7-2 行(Row)和列(Column)的运算 93

5-7-3 转置矩阵 94

5-7-4 %*%矩阵相乘 94

5-7-5 diag() 95

5-7-6 solve() 96

5-7-7 det() 97

5-8 三维或高维数组 97

5-8-1 建立三维数组 97

5-8-2 identical()函数 98

5-8-3 取得三维数组的元素 98

5-9 再谈class()函数 99

本章习题 101

Chapter 06 因子Factor 108

6-1 使用factor()或as.factor()函数建立因子 108

6-2 指定缺失的Levels值 109

6-3 labels参数 109

6-4 因子的转换 110

6-5 数值型因子在转换时常见的错误 110

6-6 再看levels参数 111

6-7 有序因子(Ordered Factor) 112

6-8 table()函数 113

6-9 认识系统内建的数据集 114

本章习题 116

Chapter 07 数据框Data Frame 120

7-1 认识数据框 120

7-1-1 建立第一个数据框 120

7-1-2 验证与设置数据框的列名和行名 121

7-2 认识数据框的结构 121

7-3 取得数据框的内容 122

7-3-1 一般取得 122

7-3-2 特殊字符$ 123

7-3-3 再看取得的数据 123

7-4 使用rbind()函数增加数据框的行数据 124

7-5 使用cbind()函数增加数据框的列数据 125

7-5-1 使用$符号 126

7-5-2 一次加多个列数据 126

7-6 再谈转置函数t() 127

本章习题 128

Chapter 08 串行List 134

8-1 建立串行 134

8-1-1 建立串行对象——对象元素不含名称 134

8-1-2 建立串行对象——对象元素含名称 134

8-1-3 处理串行内对象元素的名称 135

8-1-4 获得串行的对象元素个数 136

8-2 获得串行内对象的元素内容 136

8-2-1 使用“$”符号取得串行内对象的元素内容 136

8-2-2 使用“[[]]”符号取得串行内对象的元素内容 137

8-2-3 串行内对象的名称也可当索引值 137

8-2-4 使用“[]”符号取得串行内对象的元素内容 138

8-3 编辑串行内对象的元素值 139

8-3-1 修改串行元素的内容 139

8-3-2 为串行增加更多元素 141

8-3-3 删除串行内的元素 144

8-4 串行合并 145

8-5 解析串行的内容结构 146

本章习题 148

Chapter 09 进阶字符串的处理 154

9-1 语句的分割 154

9-2 修改字符串的大小写 154

9-3 unique()函数的使用 155

9-4 字符串的连接 155

9-4-1 使用paste()函数常见的失败实例1 155

9-4-2 使用paste()函数常见的失败实例2 156

9-4-3 字符串的成功连接与collapse参数 156

9-4-4 再谈paste()函数 157

9-4-5 扑克牌向量有趣的应用 158

9-5 字符串数据的排序 158

9-6 搜索字符串的内容 159

9-6-1 使用索引值搜索 160

9-6-2 使用grep()函数搜索 160

9-7 字符串内容的更改 161

9-8 正则表达式(Regular Expression) 162

9-8-1 搜索具有可选择性 162

9-8-2 搜索分类字符串 163

9-8-3 搜索部分字符可重复的字符串 163

本章习题 164

Chapter 10 日期和时间的处理 170

10-1 日期的设置与使用 170

10-1-1 as.Date()函数 170

10-1-2 weekdays()函数 170

10-1-3 months()函数 171

10-1-4 quarters()函数 171

10-1-5 Sys.localeconv()函数 171

10-1-6 Sys.Date()函数 172

10-1-7 再谈seq()函数 172

10-1-8 使用不同格式表示日期 173

10-2 时间的设置与使用 173

10-2-1 Sys.time()函数 174

10-2-2 as.POSIXct()函数 174

10-2-3 时间也是可以作比较的 175

10-2-4 seq()函数与时间 175

10-2-5 as.POSIXlt()函数 175

10-3 时间序列 177

本章习题 180

Chapter 11 编写自己的函数 184

11-1 正式编写程序 184

11-2 函数的基本组成 184

11-3 设计第一个函数 185

11-4 函数也是一个对象 186

11-5 程序代码的简化 187

11-6 return()的功能 188

11-7 省略函数的大括号 189

11-8 传递多个函数参数的应用 190

11-8-1 设计可传递两个参数的函数 190

11-8-2 函数参数的默认值 191

11-8-3 3点参数“...”的使用 192

11-9 函数也可以作为参数 194

11-9-1 正式实例应用 194

11-9-2 以函数的程序代码作为参数传送 195

11-10 局部变量和全局变量 195

11-11 通用函数(Generic Function) 196

11-11-1 认识通用函数print() 197

11-11-2 通用函数的默认函数 198

11-12 设计第一个通用函数 198

11-12-1 优化转换百分比函数 199

11-12-2 设计通用函数的默认函数 200

本章习题 202

Chapter 12 程序的流程控制 208

12-1 if语句 208

12-1-1 if语句的基本操作 208

12-1-2 if…else语句 210

12-1-3 if语句也可有返回值 212

12-1-4 if…else if…else if…else 213

12-1-5 嵌套式if语句 214

12-2 递归式函数的设计 215

12-3 向量化的逻辑表达式 217

12-3-1 处理向量数据时if…else产生的错误 217

12-3-2 ifelse()函数 217

12-4 switch语句 219

12-5 for循环 221

12-6 while循环 224

12-7 repeat循环 225

12-8 再谈break语句 226

12-9 next语句 227

本章习题 228

Chapter 13 认识apply家族 234

13-1 apply()函数 234

13-2 sapply()函数 236

13-3 lapply()函数 238

13-4 tapply()函数 238

13-5 iris鸢尾花数据集 240

本章习题 242

Chapter 14 输入与输出 248

14-1 认识文件夹 248

14-1-1 getwd()函数 248

14-1-2 setwd()函数 248

14-1-3 file.path()函数 248

14-1-4 dir()函数 248

14-1-5 list.files()函数 249

14-1-6 file.exist()函数 250

14-1-7 file.rename()函数 250

14-1-8 file.create()函数 250

14-1-9 file.copy()函数 250

14-1-10 file.remove()函数 251

14-2 数据输出cat()函数 251

14-3 读取数据scan()函数 253

14-4 输出数据write()函数 256

14-5 数据的输入 257

14-5-1 读取剪贴板数据 257

14-5-2 读取剪贴板数据read.table()函数 258

14-5-3 读取Excel文件数据 259

14-5-4 认识CSV文件以及如何读取Excel文件数据 260

14-5-5 认识delim文件以及如何读取Excel文件数据 262

14-6 数据的输出 263

14-6-1 writeClipboard()函数 263

14-6-2 write.table()函数 264

14-7 处理其他数据 265

本章习题 272

Chapter 15 数据分析与处理 276

15-1 复习数据类型 276

15-2 随机抽样 276

15-2-1 将随机抽样应用于扑克牌 277

15-2-2 种子值 277

15-2-3 模拟骰子 279

15-2-4 比重的设置 279

15-3 再谈向量数据的抽取并以islands为实例 280

15-4 数据框数据的抽取——对重复值的处理 282

15-4-1 重复值的搜索 284

15-4-2 which()函数 285

15-4-3 抽取数据时去除重复值 285

15-5 数据框数据的抽取——对NA值的处理 287

15-5-1 抽取数据时去除含NA值的行数据 287

15-5-2 na.omit()函数 288

15-6 数据框的字段运算 289

15-6-1 基本数据框的字段运算 289

15-6-2 with()函数 290

15-6-3 identical()函数 290

15-6-4 将字段运算结果存入新的字段 290

15-6-5 within()函数 291

15-7 数据的分割 291

15-7-1 cut()函数 292

15-7-2 分割数据时直接使用labels设定名称 292

15-7-3 了解每一人口数分类有多少州 293

15-8 数据的合并 293

15-8-1 之前的准备工作 294

15-8-2 merge()函数使用于交集合并的情况 295

15-8-3 merge()函数使用于并集合并的情况 296

15-8-4 merge()函数参数“all.x=TRUE” 296

15-8-5 merge()函数参数“all.y=TRUE” 297

15-8-6 match()函数 297

15-8-7 %in% 298

15-8-8 match()函数结果的调整 299

15-9 数据的排序 299

15-9-1 之前的准备工作 299

15-9-2 向量的排序 300

15-9-3 order()函数 301

15-9-4 数据框的排序 301

15-9-5 排序时增加次要键值的排序 302

15-9-6 混合排序与xtfrm()函数 304

15-10 系统内建数据集mtcars 305

15-11 aggregate()函数 307

15-11-1 基本使用 307

15-11-2 公式符号Formula Notation 307

15-12 建立与认识数据表格 308

15-12-1 认识长格式数据与宽格式数据 309

15-12-2 reshapes2扩展包 309

15-12-3 将宽格式数据转成长格式数据melt()函数 310

15-12-4 将长格式数据转成宽格式数据dcast()函数 312

本章习题 315

Chapter 16 数据汇总与简单图表制作 320

16-1 之前的准备工作 320

16-1-1 下载MASS扩展包与crabs对象 320

16-1-2 准备与调整系统内建state相关对象 320

16-1-3 准备mtcars对象 322

16-2 了解数据的唯一值 322

16-3 基础统计知识与R语言 323

16-3-1 数据的集中趋势 323

16-3-2 数据的离散程度 325

16-3-3 数据的统计 328

16-4 使用基本图表认识数据 331

16-4-1 绘制直方图 331

16-4-2 绘制密度图 334

16-4-3 在直方图内绘制密度图 336

16-5 认识数据汇总函数summary() 337

16-6 绘制箱形图 338

16-7 数据的相关性分析 341

16-7-1 iris对象数据的相关性分析 341

16-7-2 stateUSA对象数据的相关性分析 343

16-7-3 crabs对象数据的相关性分析 344

16-8 使用表格进行数据分析 345

16-8-1 简单的表格分析与使用 345

16-8-2 从无到有建立一个表格数据 345

16-8-3 分别将矩阵与表格转成数据框 347

16-8-4 边际总和 347

16-8-5 计算数据的占比 348

16-8-6 计算行与列的数据占比 349

本章习题 350

Chapter 17 正态分布 356

17-1 用直方图检验crabs对象 356

17-2 用直方图检验beaver2对象 357

17-3 用QQ图检验数据是否服从正态分布 359

17-4 shapiro.test()函数 361

本章习题 363

Chapter 18 数据分析——统计绘图 368

18-1 分类数据的图形描述 368

18-1-1 条形图与barplot()函数 368

18-1-2 圆饼图与pie()函数 371

18-2 量化数据的图形描述 372

18-2-1 点图与dotchart()函数 373

18-2-2 绘图函数plot() 376

18-3 在一个页面内绘制多张图表的应用 391

18-4 将数据图存盘 393

18-5 新建窗口 395

本章习题 397

Chapter 19 再谈R的绘图功能 404

19-1 绘图的基本设置 404

19-1-1 绘图设备 404

19-1-2 绘图设置 407

19-1-3 layout()函数的设置 418

19-2 高级绘图 421

19-2-1 曲线绘图curve() 421

19-2-2 绘图函数coplot() 423

19-2-3 3D绘图函数 426

19-3 低级绘图——附加图形于已绘制完成的图形 429

19-3-1 points()函数与text()函数 429

19-3-2 lines()、arrows()与segments()函数 432

19-3-3 ploygon()函数绘制多边形 434

19-3-4 abline()直线、legend()图例、title()抬头与axis() 438

19-4 交互式绘图 443

本章习题 446

Appendix A 下载和安装R 456

A-1 下载R语言 456

A-2 下载RStudio 458

Appendix B 使用R的补充说明 460

B-1 获得系统内建的数据集 460

B-2 看到陌生的函数 461

B-3 看到陌生的对象 461

B-4 认识CRAN 463

B-5 搜索扩展包 463

B-6 安装与加载扩展包 464

B-7 阅读扩展包的内容 465

B-8 更新扩展包 466

B-9 搜索系统目前的扩展包 466

B-10 卸载扩展包 467

B-11 R-Forge 467