我的新书《R语言数据分析、挖掘建模和可视化》出版上市啦!

数据分析1480

共 6700字,需浏览 14分钟

 ·

2021-01-15 06:35

出发点




2018年年初开始了处女作的编写,并在当年10月上线《从零开始学Python数据分析与挖掘》。在编写处女作的同时也在想另一件事,Python更多的应用于企业界,而教育领域的统计学专业,还更多地基于R语言实现统计应用和计算。所以特地基于R语言重新写了《从零开始学Python数据分析与挖掘》姊妹篇《R语言数据分析、挖掘建模和可视化》,并在2021年1月份上线。希望本著作能够展现给更多的朋友,在读者朋友的平时学习和工作中起到辅助和参考效果。


内容简介




第一部分(第1~4章)介绍R语言的一些基础知识和使用技巧,内容包含R语言中的数据结构、控制流语句和自定义函数、apply簇函数的使用、外部数据的读取、数据的清洗和整理以及正则表达式的使用。


第二部分(第5、6章)重点介绍绘图包ggplot2的使用,详细讲解各种统计图形的绘制方法(如条形图、环形图、瓦片图、直方图、小提琴图、折线图、面积图、散点图、地图等),以及图形绘制过程中的微调策略(如图例位置的摆放、自定义颜色的调整、图形形状的选择以及多图形的组合等)。


第三部分(第7~15章)一共包含了10种数据挖掘算法的应用,如线性回归、决策树、支持向量机、GBDT等。采用通俗易懂的手法介绍每一个挖掘算法的理论知识,并借助于具体的项目数据完成算法的实战。本部分内容既可以提高数据分析与挖掘的水平和技能,也可以作为数据挖掘算法实操的模板。

详细目录

下拉查看详细目录

第1章  R语言的必备基础知识 1

1.1  R语言简介 1

1.2  R软件的下载与安装 2

1.3  第三方包的下载与加载 4

1.3.1  手动下载法 4

1.3.2  代码下载法 4

1.3.3  第三方包的加载 5

1.4  如何查看帮助文档 6

1.4.1  知包知函数——help函数 6

1.4.2  知函数未知包——help.search函数 6

1.4.3  知包未知函数——apropos函数 7

1.4.4  未知函数未知包——RSiteSearch函数 8

1.5  R语言中的数据结构 9

1.5.1  向量的创建 9

1.5.2  向量元素的获取 13

1.5.3  基于向量的数据类型转换 15

1.5.4  向量的因子化转换 18

1.5.5  基于向量的常用函数 20

1.6  矩阵的构造 21

1.6.1  矩阵索引的使用 23

1.6.2  基于矩阵运算的常用函数 24

1.7  数据框的构造及常用函数 24

1.7.1  构造数据框 24

1.7.2  基于数据框的常用函数 26

1.8  列表的构造及索引的使用 30

1.8.1  列表的构造 30

1.8.2  列表索引的使用 31

1.9  控制流语句及自定义函数 31

1.9.1  if分支 32

1.9.2  for循环 33

1.9.3  while循环 35

1.10  R语言中的自定义函数 37

1.11  巧用apply簇函数 38

1.11.1  tapply函数的使用 38

1.11.2  apply函数的使用 40

1.11.3  lapply与sapply函数的使用 42

1.12  教你一个爬虫项目 44

1.13  篇章总结 46


第2章  数据的读写操作 47

2.1  文本文件数据的读取 47

2.1.1  csv或txt格式的数据读入 47

2.1.2  Json格式的数据读入 53

2.2  Excel数据的读取 56

2.2.1  xlsx包读取Excel数据 56

2.2.2  readxl包读取Excel数据 60

2.3  数据库数据的读取 63

2.3.1  读取MySQL数据库 63

2.3.2  读取SQL Server数据库 66

2.4  几种常见的数据写出格式 70

2.4.1  写出至文本文件 70

2.4.2  写出至电子表格Excel 71

2.4.3  写出至数据库 73

2.5  篇章总结 74


第3章  数据的清洗与管理 76

3.1  重复记录的识别和处理 77

3.2  缺失值的识别 79

3.3  缺失值的处理办法 82

3.3.1  删除法 82

3.3.2  替换法 83

3.3.3  插补法 84

3.4  异常值的识别和处理 86

3.4.1  基于分位数法识别异常值 86

3.4.2  基于σ方法识别异常值 88

3.4.3  基于模型法识别异常值 90

3.4.4  异常值的处理办法 92

3.5  数据形状的重塑 93

3.5.1  reshape2包 93

3.5.2  Tidyr包 96

3.6  数据的聚合操作 97

3.6.1  基于aggregate函数的聚合 97

3.6.2  基于sqldf函数的聚合 99

3.6.3  基于group_by和summarize函数的聚合 101

3.7  数据的合并与连接 102

3.7.1  基于bind_rows函数的数据合并 102

3.7.2  基于*_join函数的数据连接 104

3.8  几种常用的抽样技术 106

3.8.1  简单随机抽样 106

3.8.2  分层抽样 107

3.8.3  整群抽样 108

3.9  篇章总结 109


第4章  基于正则表达式的字符串处理技术 111

4.1  基于字符串位置的处理技术 112

4.1.1  数据截断——特定位置的子串获取 112

4.1.2  数据清洗——非常规的字符型转数值型 114

4.1.3  数据清洗——字符串子串的隐藏 116

4.2  正则表达式的定义及用途 117

4.2.1  什么是正则表达式 117

4.2.2  正则表达式的常见用法 118

4.3  基于正则的单字符匹配 118

4.3.1  从静态文本的匹配开始 118

4.3.2  任意单字符的匹配 121

4.3.3  指定字符集的匹配 122

4.4  字符匹配次数的设置 125

4.4.1  无上限的次数匹配 125

4.4.2  有限次数的匹配 128

4.5  其他正则符号的使用 131

4.6  篇章总结 132


第5章  数据可视化技术的应用 134

5.1  条形图的绘制 136

5.2  饼图与环形图的绘制 140

5.3  矩形图与瓦片图的绘制 141

5.4  直方图与频次多边形图的绘制 144

5.5  箱线图与小提琴图的绘制 147

5.6  折线图与阶梯图的绘制 150

5.7  面积图与带状图的绘制 153

5.8  散点图及气泡图的绘制 155

5.9  区块频次图的绘制 160

5.10  核密度图的绘制 163

5.11  QQ图的绘制 165

5.12  篇章总结 166


第6章  可视化图形的个性化调整 169

6.1  分面图与组合图的绘制 169

6.2  参考线和文本标签的添加 175

6.3  轴系统coord_*的设置 180

6.4  尺度scale_*的设置 182

6.5  颜色、形状和线条类型的自定义设置 189

6.6  图形主题的设置 191

6.7  有关图例布局的调整 195

6.8  篇章总结 199


第7章  线性回归模型的预测应用 201

7.1  相关性分析 201

7.2  回归性分析 202

7.3  线性回归模型的介绍 203

7.4  回归系数求解 204

7.4.1  构造似然函数 205

7.4.2  取对数并整理 205

7.4.3  展开并求导 206

7.4.4  计算偏回归系数 206

7.5  实战案例——如何基于成本预测利润 206

7.6  模型的显著性检验——F检验 210

7.6.1  提出假设 210

7.6.2  构造统计量 210

7.6.3  计算统计量 211

7.6.4  对比统计量的值和理论分布值 212

7.7  参数的显著性检验——t检验 212

7.7.1  提出假设 212

7.7.2  构造统计量 213

7.7.3  计算统计量 213

7.7.4  对比统计量的值和理论分布值 214

7.8  变量选择——逐步回归法 214

7.9  验证模型的各类假设前提 216

7.9.1  多重共线性检验 216

7.9.2  正态性检验 217

7.9.3  独立性检验 220

7.9.4  方差齐性检验 220

7.10  模型的预测 222

7.11  篇章总结 223


第8章  岭回归与LASSO回归模型 225

8.1  岭回归模型的介绍 225

8.1.1  参数求解 226

8.1.2  系数求解的几何意义 227

8.1.3  岭回归模型的应用 228

8.1.4  模型的预测 234

8.2  LASSO回归模型的介绍 235

8.2.1  参数求解 236

8.2.2  系数求解的几何意义 237

8.2.3  LASSO回归模型的应用 238

8.2.4  模型的预测 240

8.3  篇章总结 242


第9章  Logistic回归模型的分类应用 244

9.1  Logistic回归模型的构建 245

9.2  Logistic回归模型的参数求解 247

9.2.1  极大似然估计 247

9.2.2  梯度下降 249

9.3  Logistic回归模型的参数解释 249

9.4  几种常用的模型评估方法 250

9.4.1  混淆矩阵 250

9.4.2  ROC曲线 251

9.4.3  K-S曲线 253

9.5  Logistic回归模型的应用 256

9.5.1  建模 256

9.5.2  预测 259

9.5.3  模型评估 260

9.6  篇章总结 262


第10章  决策树与随机森林的应用 264

10.1  节点字段的选择 265

10.1.1  信息增益 266

10.1.2  信息增益率 268

10.1.3  基尼指数 270

10.2  决策树的剪枝 272

10.2.1  误差降低剪枝法 272

10.2.2  悲观剪枝法 273

10.2.3  代价复杂度剪枝法 274

10.3  随机森林 276

10.3.1  随机森林的思想 277

10.3.2  随机森林的函数说明 278

10.4  决策树与随机森林的应用 279

10.4.1  分类问题的应用 280

10.4.2  预测问题的应用 287

10.5  篇章总结 290


第11章  KNN模型 292

11.1  KNN算法的思想 292

11.2  最佳k值的选择 293

11.3  相似度的度量方法 294

11.3.1  欧氏距离 294

11.3.2  曼哈顿距离 295

11.3.3  余弦相似度 295

11.3.4  杰卡德相似系数 296

11.4  近邻样本的搜寻方法 297

11.4.1  KD树搜寻法 297

11.4.2  球树搜寻法 301

11.5  KNN模型的应用 303

11.5.1  分类问题的判别 304

11.5.2  预测性问题的解决 309

11.6  篇章总结 312


第12章  朴素贝叶斯模型 314

12.1  朴素贝叶斯理论基础 315

12.2  几种贝叶斯模型 316

12.2.1  高斯贝叶斯分类器 316

12.2.2  高斯贝叶斯分类器的应用 318

12.2.3  多项式贝叶斯分类器 322

12.2.4  多项式贝叶斯分类器的应用 324

12.2.5  伯努利贝叶斯分类器 327

12.2.6  伯努利贝叶斯分类器的应用 329

12.3  篇章总结 335


第13章  SVM模型 337

13.1  SVM的简介 338

13.1.1  距离公式的介绍 339

13.1.2  SVM的实现思想 339

13.2  几种常见的SVM模型 341

13.2.1  线性可分的SVM 341

13.2.2  一个手工计算的案例 344

13.2.3  近似线性可分SVM 346

13.2.4  线性SVM的损失函数 348

13.2.5  非线性可分SVM 349

12.2.6  几种常用的SVM核函数 351

12.2.7  SVM的回归预测 352

12.2.8  R语言函数介绍 353

13.3  分类性SVM模型的应用—手写字母的识别 355

13.4  预测性SVM回归模型的应用—受灾面积的预测 358

13.5  篇章总结 361


第14章  GBDT模型 363

14.1  提升树算法 364

14.1.1  AdaBoost算法的损失函数 364

14.1.2  AdaBoost算法的操作步骤 366

14.1.3  AdaBoost算法的简单例子 367

14.1.4  AdaBoost算法的应用 369

14.2  GBDT算法的介绍 375

14.2.1  GBDT算法的操作步骤 375

14.2.2  GBDT分类算法 376

14.2.3  GBDT回归算法 377

14.2.4  GBDT算法的应用 378

14.3  非平衡数据的处理 382

14.4  XGBoost算法 384

14.4.1  XGBoost算法的损失函数 384

14.4.2  损失函数的演变 386

14.4.3  XGBoost算法的应用 388

14.5  篇章总结 394


第15章  Kmeans聚类分析 396

15.1  Kmeans聚类 397

15.1.1  Kmeans的思想 397

15.1.2  Kmeans的原理 398

15.2  最佳k值的确定 399

15.2.1  拐点法 400

15.2.2  轮廓系数法 402

15.2.3  Gap Statistic 404

15.3  Kmeans聚类的应用 407

15.3.1  鸢尾花类别的聚类 407

15.3.2  基于NBA球员历史参赛数据的聚类 410

15.4  Kmeans聚类的注意事项 415

15.5  篇章总结 416


专家推荐

下拉查看详细推荐语

 本书从数据分析的流程和应具备的核心技能出发引导初学者进行数据的探索与价值的发现,是一本想通过以R为基础系统学习数据挖掘知识和常用算法成为一名优秀数据分析师不可或缺的参考书。本书是作者《从零开始学习Python数据分析与挖掘》的姐妹篇,对于将来想通过Python进一步学习机器学习的读者定会起到事半功倍的作用。

--------华东师范大学统计学院教授,博士生导师; 上海数萃大数据科技有限公司联合创始人


本书从R语言的基础内容开始,逐渐深入至数据的清洗管理、数据的可视化技术、数据挖掘的各种算法,涵盖的内容十分全面。无论是新手入门,还是对于有一定基础想进一步深入了解数据分析技能的读者,都是不错的一本工具书。

--------浙江工商大学应用统计系教授,博士生导师,杨晓蓉


数据分析和数据挖掘从来就不是分离的。一个优秀的数据科学家是商学院思维、模型算法思维和软件工程思维的完美统一体。全面掌握和灵活运用至少一门面向数据分析和挖掘的编程语言,对数据科学家而言也是最基本的要求。这本书的内容涵盖了数据清洗、数据处理、数据可视化以及主流挖掘算法,堪称企业级数据应用的R语言编程全流程实战宝典。

--------重庆农村商业银行金融创新部大数据中心总监  孙光辉


R语言作为当今数据科学中应用最广的编程语言之一,离不开其背后强有力的社区贡献。此书不仅介绍了R语言入门的基础知识,还列举了多种常用机器学习算法的实现,深入浅出,相信对于数据科学领域或者想要熟悉R语言的同学,这本书无疑是一个不错的建议。

--------蚂蚁金服,数据技术专家,王修坤


这本书内容翔实、编排得当,覆盖了整个数据分析和挖掘领域的基础知识与核心算法。各种方法的介绍由浅入深,理论和实践融合得很好,尤其是各个实际操作的例子,非常体现作者的功力,增之一分则太长减之一分则太短。

--------“统计之都”核心成员、《统计之美》作者   李舰


精彩实拍




致谢


最后再次感谢清华大学出版社的编辑以及其他默默为本书付出的出版工作者,真诚地感谢广大网友及粉丝朋友的期待和关注,是你们给了我动力坚持将本书内容写好写足。同时,也期待读者朋友们给予指正和建议。

为表达读者朋友一直以来的支持和认可,特赠送5本图书,邀请大家踊跃参与留言,根据留言排名寄送图书哦(截止时间:2021年1月15日)。

读者朋友们可以通过天猫、当当、京东等平台搜索选购,关于书中的任何疑问都可以直接加我微信(lsx19890717),一起讨论书中的知识哦~

浏览 61
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报