R语言是一个自由、免费、源代码开放的编程语言和环境,它提供了强大的数据分析功能和丰富的数据可视化手段。随着数据科学的快速发展,R语言已经成为数据分析领域炙手可热的通用语言。全书分为3篇共12章,具体内容如下。篇:入门篇(章~第3章)。本篇将带领读者逐步走进R语言的世界,帮助读者对R语言形成初步的认识,并学会如何获取和安装R语言,以及如何在需要时获取帮助。然后介绍R语言的一些基础知识,这些知识是灵活应用R语言的必要前提。很后重点介绍R语言函数的使用方法,同时也会涉及一些其他相关内容,如流程控制和R语言环境等。第2篇:进阶篇(第4章~1章)。本篇介绍R语言数据管理、数据分析和数据可视化的三大威力,包括通过数据获取、导出、整合和清理等操作将零散的数据整合为可以分析处理的数据集的多种方法;并介绍一些常用基础统计和不错统计的实现方法,以及R语言的图形生成、图形修饰、外部绘图插件和图形展示等功能。第3篇:实战篇(2章)。本篇通过一个实战案例,综合讲解R语言在数据处理与可视化分析方面的实战技能。
1. 理论为辅、实践为主。本书涉及一些必要的理论知识,特别是在数据分析部分,但总体以实践为主,因此几乎每节都有大量的代码,方便读者实践。 2. 知识全面、系统。本书在介绍了R语言的基础知识后,从数据获取和导出、数据清理和操作、数据分析和可视化方面分别进行了探讨,内容由浅入深、循序渐进。 3. 案例广泛。本书中的案例涉及心理学、社会学、医学、商业和经济等领域,但并不需要读者具备这些领域的专业知识。 4. “新手问答”和“小试牛刀”知识模块。“新手问答”主要对读者学习过程中易出现的疑问或容易犯的错误进行针对性的解答;“小试牛刀”结合每章知识及相关技能,列举综合上机案例,让读者在学完一章内容后能及时回顾和练习,旨在让读者巩固知识、学以致用。
第1篇入门篇第1章R语言快速入门/3
1.1R语言及其历史/4
1.1.1R语言的源起/4
1.1.2R语言的版本更新/4
1.2R语言的优势和劣势/5
1.2.1R语言的优势/5
1.2.2R语言的劣势/6
1.3R语言的软件获取及安装/6
1.3.1获取R语言软件/6
1.3.2在Windows平台上安装/7
1.3.3在Linux平台上安装/10
1.3.4在Mac OS平台上安装/11
1.4R语言的辅助工具/13
1.4.1R GUI/13
1.4.2RStudio/16
1.4.3获取帮助/19
1.5新手问答/21
1.6小试牛刀:练习设置RStudio全局选项/21
本章小结 /23
第2章R语言的编程基础(上)/24
2.1对象与变量/25
2.1.1对象/25
2.1.2变量/26
2.1.3变量的列举和删除/28
2.2数据类型/30
2.2.1常用数据类型/31
2.2.2特殊值/31
2.3数据结构/32
2.3.1向量/32
2.3.2矩阵和数组/38
2.3.3因子/43
2.3.4列表/46
2.3.5数据框/50
2.3.6原子向量和递归向量/53
2.4数学运算/58
2.4.1基础运算/58
2.4.2向量运算/61
2.4.3矩阵运算/64
2.5新手问答/65
2.6小试牛刀:提取数据框子集,并对部分列做统计计算/66
本章小结 /67
第3章R语言的编程基础(下)/68
3.1流程控制/69
3.1.1repeat循环/69
3.1.2while循环/70
3.1.3for循环/70
3.1.4if…else语句/72
3.1.5switch语句/73
3.2编写R函数/74
3.2.1函数格式/74
3.2.2函数参数/75
3.2.3返回值/77
3.2.4函数调用/77
3.3R语言常用函数/78
3.3.1文件操作函数/78
3.3.2基础计算函数/81
3.3.3概率分布函数/86
3.3.4字符处理函数/90
3.4R包/94
3.4.1R包的管理/94
3.4.2R包的加载/97
3.4.3自定义R包/98
3.5环境空间/103
3.5.1环境空间的种类/103
3.5.2环境空间的使用方法/104
3.5.3环境空间的特征/106
3.6新手问答/108
3.7小试牛刀:编写函数并实现调用 /109
本章小结 /110
第2篇进阶篇第
4章R语言的数据获取与导出/113
4.1数据获取/114
4.1.1导入R语言系统格式数据/114
4.1.2导入带有分隔符的文本数据/114
4.1.3导入Excel数据/115
4.1.4读取数据库数据/119
4.1.5读取其他统计工具的数据/128
4.1.6从互联网抓取数据/136
4.2数据导出/151
4.2.1写入R语言系统格式的数据/151
4.2.2写入文本文件/152
4.2.3写入Excel文件/152
4.2.4写入数据库/153
4.3新手问答/155
4.4小试牛刀:比较R语言读/写文件的效率/156
本章小结 /158
第5章R语言的数据管理威力之数据操作/159
5.1R语言内置数据操作函数/160
5.1.1查看和编辑数据/160
5.1.2筛选/163
5.1.3合并/165
5.1.4分组和汇总/168
5.1.5排序/170
5.1.6转换/173
5.2数据重塑/175
5.3apply函数族/178
5.3.1apply()函数/178
5.3.2lapply()函数/181
5.3.3sapply()函数/183
5.3.4vapply()函数/183
5.3.5mapply()函数/184
5.4plyr扩展包/184
5.5用sqldf()函数实现数据框的SQL风格查询/189
5.6dplyr扩展包/191
5.7新手问答 /199
5.8牛刀小试:对矩阵各列使用不同的
函数/200
本章小结 /202
第6章语言的数据分析威力之基本统计/203
6.1描述性统计/204
6.1.1描述性统计量/204
6.1.2列联表/206
6.1.3同时呈现多个统计量/210
6.2计数数据的检验/215
6.2.1卡方检验的基本原理/215
6.2.2在R语言中实现卡方检验/216
6.3相关分析/220
6.3.1相关的类型/220
6.3.2各种相关系数计算在R语言中的实现/221
6.4t检验/224
6.4.1独立样本t检验/225
6.4.2非独立样本t检验/227
6.4.3对t检验的前提假设进行检验/228
6.5方差分析/230
6.5.1方差分析的基本术语/230
6.5.2aov()函数/231
6.5.3单因素非重复测量方差分析/232
6.5.4单因素协方差分析/235
6.5.5单因素重复测量方差分析/238
6.5.6两因素方差分析/240
6.5.7对方差分析前提假设的检验/242
6.6非参数检验/242
6.6.1两总体比较/243
6.6.2多于两总体比较/244
6.7回归分析/244
6.7.1lm()函数/245
6.7.2模型拟合/245
6.7.3模型诊断/249
6.7.4模型改进/251
6.8新手问答/257
6.9小试牛刀:独立样本均值差异检验/257
本章小结 /259
第7章R语言的数据分析威力之高级方法/262
7.1判别分析/263
7.1.1判别分析的原理/263
7.1.2判别分析在R语言中的实现/264
7.2聚类分析/273
7.2.1聚类分析的原理/274
7.2.2聚类分析在R语言中的实现/279
7.3主成分分析/289
7.3.1主成分分析的原理/289
7.3.2主成分分析在R语言中的实现/290
7.4因子分析/292
7.4.1因子分析的原理/293
7.4.2因子分析在R语言中的实现/295
7.5新手问答/302
7.6小试牛刀:尝试实现层次聚类/302
本章小结 /303
第8章R语言的可视化威力之图形生成/304
8.1R语言绘图系统/305
8.2单变量绘图和双变量绘图/305
8.2.1散点图/305
8.2.2折线图/309
8.2.3条形图/312
8.2.4饼图/314
8.2.5箱线图/315
8.2.6直方图和核密度图/317
8.3多变量绘图/319
8.3.1气泡图/319
8.3.2热图/321
8.3.3马赛克图/322
8.3.4相关矩阵图/325
8.3.5三维散点图/327
8.4新手问答/328
8.5小试牛刀:将两个数据源绘制在同一个坐标系中/329
本章小结 /330
第9章R语言的可视化威力之图形优化/331
9.1添加图形元素/332
9.1.1坐标轴/332
9.1.2图例/337
9.1.3文本注解/341
9.1.4标题/343
9.1.5参考线/344
9.1.6线段和带箭头的线段/346
9.1.7矩形阴影/347
9.2控制图形外观/348
9.2.1整体外观/348
9.2.2局部外观/351
9.2.3文本/352
9.2.4线条/353
9.2.5矩形/354
9.2.6点的形状/355
9.3图形配色与布局/356
9.3.1颜色与调色板/356
9.3.2面板和分面/362
9.3.3图形组合/365
9.4新手问答/368
9.5小试牛刀:使用网格系统组合图形/369
本章小结 /370
第10章R语言的可视化威力之外部插件/371
10.1ggvis插件包/372
10.1.1ggivs与ggplot2的对比/372
10.1.2绘图语法/374
10.1.3图层/377
10.1.4图形修饰/384
10.2plotly插件包/391
10.2.1plotly插件包对ggplot2包绘图对象的扩展/392
10.2.2绘图语法/393
10.2.3绘图示例/403
10.2.4图形修饰/416
10.3新手问答/422
10.4小试牛刀:使用plotly插件包绘制组合图/423
本章小结 /425
第11章R语言的可视化威力之图形展示/426
11.1传统图形输出/427
11.1.1输出为位图文件/427
11.1.2输出为PDF文件/428
11.1.3输出为矢量图/429
11.2网页输出/429
11.2.1使用R Markdown输出为网页/430
11.2.2使用shiny输出为网页/437
11.3新手问答/443
11.4小试牛刀:将绘图输出为HTML文档/444
本章小结 /446
第3篇实战篇
第12章R语言对产品性价比的数据分析与可视化/449
12.1数据采集/450
12.1.1分析页面结构/450
12.1.2编写爬虫程序/454
12.1.3抓取数据并保存/463
12.2数据清理/463
12.2.1变量(字符)拆分与抽取/464
12.2.2检测数据缺失与重复值/466
12.2.3变量类型转化与重命名/468
12.3数据分析与数据可视化/470
12.3.1探索性数据分析/470
12.3.2图书价格和评论指标的聚类分析/484
12.3.3图书性价比分析/487
本章小结 /496
参考文献/497
R 语言是S 语言的一个分支,而S 语言则是由John Chambers、Rick Becker 和Allan Wilks 等人在贝尔实验室(前身为AT & T,现为朗讯科技)开发的一种用来进行数据探索、统计分析和作图的解释型语言。S 语言*初的实现版本主要是S-PLUS。S-PLUS 是一个商业软件,它基于S 语言,并被MathSoft 公司的统计科学部进一步完善。1995 年,奥克兰大学统计系的Ross Ihaka 和RobertGentleman 基于S 语言的源代码并结合Scheme 语言的语法,编写了一个能执行S 语言的软件。他们以两人名字的首字母将该软件命名为“R”,并公开了该软件的全部源代码,其命令统称为R 语言。因此R 语言其实也是S 语言的一种实现。 1997 年,由11 人组成的R 语言开发核心团队正式成立,负责R 语言的开发和维护。如今R语言核心开发团队已经达到25 人,成员来自世界知名大学和企业。由于R 语言具备出众的扩展性,其使用者越来越多,同时也吸引了大量的开发者编写自定义函数包供更多人使用。自2004 年开始,R 语言基金会几乎每年都支持R 语言社区成员组织的会议,世界各地的R 语言开发者和用户齐聚一堂,讨论R 语言的应用与科研方面的成果。此外,自2008 年开始,国内也定期举行中国R 语言会议,以推动R 语言在我国的普及。 截至2018 年12 月,R 语言在TIOBE 指数中排名第16 位,反映了R 语言的流行程度。
程乾,长期从事教育测量和教育大数据分析,擅长教育测量技术、数据可视化、数据挖掘算法和数据库管理,并致力于R的推广和普及。 刘永,R语言极客,数据分析专家,曾任职于科大讯飞(深圳),新光在线(深圳),擅长数据管理、数据可视化、潜在分类分析、结构方程建模和统计计算,对R语言有深入研究。 高博,高级工程师,主要研究方向为云计算与大数据、数据可视化等,熟悉R语言、.Net、PHP、Python、DevOps、MySQL、SQLServer等技术和工具。参与编写了《代码的力量——Discuz!源码分析与插件开发实例进阶》《PHP+MySQL+AJAX Web开发给力起飞》《Java Web应用开发给力起飞》等图书。主持省部级纵向课题3项,参与纵向、横向课题16项,获得软件著作权12项。
《OpenGL编程指南(原书第7版)》对OpenGL以及OpenGL实用函数库进行了全面而又权威的介绍,素有“OpenGL红宝书”之誉。《OpenGL编程
《全价值经营:如何为消费过程创造价值》内容简介:本书基于需求的视角,从本质上揭示企业与消费者之间的关系,理清企业价值经营的
网络工程师考前串讲与模拟试卷 内容简介 本书紧扣新版考试大纲,以“考前串讲” “模拟试卷” “真题分析”的组织形式对网络工程师考试考生冲刺阶段的复习做出了指导。...
《顺利升入一年级》内容简介:幼小衔接是教育的基础工程,但很多家长对幼小衔接认识不清,在错误的方向上努力,以至问题丛生。本书
《JavaTCP/IPSocket编程(原书第2版)》基于TCP/IPSocket相关原理,对如何在Java中进行Socket编程作了深入浅出的介绍。《Java...
《零基础学Java》内容简介:本书主要介绍Java语言编程的入门知识。其中涉及的内容有网络编程技术、图形编程技术、数据库编程技术等
《初级会计实务辅导教材》内容简介:《2013年会计专业技术资格全国统考专用辅导教材:初级会计实务辅导教材》是针对2013年全国会计
Cisco IP 电话疑难解析 内容简介 本书指导读者学习怎样分析和纠正IP电话网络中的问题。全书共分18章,分别介绍了疑难解析方法学、IP电话体系结构、疑难解...
在1955-1968年乌尔姆设计学院办学期间,没有人能预料到这所规模不大、位置偏僻且历史短暂的学校,会有如此大的影响力。乌尔姆设计
《秋山集:故纸谈往录》内容简介:本书是李军老师对既往的追忆,是对秋的纪念,是对春的期待。正如《春水集》之名源于《纸上春水桃
本书是C++模板编程的完全指南,旨在通过基本概念、常用技巧和应用实例3方面的有用资料,为读者打下C++模板知识的坚实基础。全书共
《单读14:世界的水手》内容简介:本辑专题围绕“世界的水手”主题,邀请五位当代澳大利亚作者亮相,组成澳大利亚文学特辑,他们包
本书将带领读者从头开始制作一门语言的编译器。笔者特意为本书设计了CЬ语言,CЬ可以说是C语言的子集,实现了包括指针运算等在内
《软件调试实战》主要讲述C/C++程序的调试和分析,书中的调试技术也可以应用于其他语言编写的程序。《软件调试实战》在讲述简单的
《深入Linux设备驱动程序内核机制》内容简介:这是一本系统阐述Linux设备驱动程序技术内幕的专业书籍,它的侧重点不是讨论如何在
《刑事程序中的透明性与正当性》内容简介:来自英美法系的对抗制理念在我国风靡一时。关于何谓“正当程序”,一些对抗制教条逐渐演
《Arduino互动设计》内容简介:本书使用Arduino硬件平台和Mixly图形化编程工具,从简单的“点亮创客之灯”开始,以生活中常见的具体
不能说的秘密-Photoshop风光摄影后期创意调色圣经-含光盘1张 本书特色 介绍风光摄影后期常见问题处理阐述风光摄影后期各种创作思路解析众多风光摄影后期调色...
《全国通信专业技术人员职业水平考试参考用书:通信专业实务(初级)》按照人事部、信息产业部全国通信专业技术人员职业水平考试大纲
《忽必烈》内容简介:忽必烈,是中国和蒙古族历史上的重要人物。虽灭亡南宋,一统全国,行用汉法,创建元朝,却又多疑猜忌,贪财谥