图书目录

第1篇 基础知识

第1章 初识R语言 2

视频讲解:9分钟

1.1 R语言概述 2

1.1.1 R语言简介 2

1.1.2 为什么要学习R语言 3

1.2 R开发环境的下载与安装 3

1.2.1 下载R开发环境 3

1.2.2 安装R开发环境 6

1.3 编写第一个R语言程序 7

第2章 集成开发环境RStudio 9

视频讲解:12分钟

2.1 RStudio概述 9

2.2 下载与安装RStudio 9

2.2.1 下载RStudio 9

2.2.2 安装RStudio 11

2.3 使用RStudio编写R程序 12

2.4 详解RStudio集成开发环境 16

2.4.1 RStudio编辑窗口 16

2.4.2 菜单栏介绍 17

2.4.3 RStudio特色功能 18

2.4.4 RStudio常用的快捷键 18

第3章 R语言入门 19

视频讲解:46分钟

3.1 R语言编码规则 19

3.1.1 控制台规则 19

3.1.2 赋值语句的写法 20

3.1.3 输入的规则 20

3.2 R语言基础 20

3.2.1 常用保留字 20

3.2.2 变量 21

3.2.3 基本数据类型 22

3.2.4 运算符 23

3.3 函数 27

3.3.1 内置函数 27

3.3.2 自定义函数的创建和调用 28

3.3.3 返回值 29

3.4 字符串 29

3.4.1 字符串规范 29

3.4.2 字符串常用函数 30

3.4.3 连接字符串 30

3.4.4 计算字符串长度 31

3.4.5 字符大小写转换 31

3.4.6 截取字符串 32

3.4.7 查询字符串 32

3.5 包的安装与使用 33

3.5.1 查看包 33

3.5.2 包的安装 34

3.5.3 包的使用 35

3.6 R语言帮助文档 35

3.6.1 help菜单命令 35

3.6.2 帮助函数 36

3.7 要点回顾 37

第4章 数据结构 38

视频讲解:104分钟

4.1 向量 38

4.1.1 创建向量 38

4.1.2 向量索引 42

4.1.3 向量操作 43

4.1.4 向量运算 44

4.1.5 向量排序 45

4.1.6 向量合并 47

4.2 矩阵 48

4.2.1 创建矩阵 48

4.2.2 矩阵索引 50

4.2.3 矩阵编辑 51

4.2.4 矩阵运算 52

4.3 数组 56

4.3.1 认识数组 56

4.3.2 创建数组 57

4.3.3 数组索引 58

4.3.4 修改数组 59

4.4 数据框 60

4.4.1 创建数据框 60

4.4.2 查看数据框信息 61

4.4.3 获取指定数据 63

4.4.4 数据的处理 64

4.5 因子 66

4.5.1 因子的概念及应用 67

4.5.2 创建因子 67

4.5.3 调整因子水平 68

4.6 列表 68

4.6.1 创建列表 69

4.6.2 列表的索引 69

4.7 要点回顾 70

第5章 流程控制语句 71

视频讲解:26分钟

5.1 程序结构 71

5.2 选择语句 72

5.2.1 if语句 72

5.2.2 if...else语句 73

5.2.3 if...else if...else语句 74

5.2.4 多分支swich语句 75

5.2.5 向量化的ifelse语句 76

5.3 循环语句 77

5.3.1 repeat语句 77

5.3.2 while语句 77

5.3.3 for语句 78

5.3.4 replication()函数 79

5.4 跳转语句 79

5.4.1 next语句 79

5.4.2 break语句 80

5.5 要点回顾 80

第6章 日期和时间序列 81

视频讲解:86分钟

6.1 日期和时间函数 81

6.1.1 返回系统当前日期和时间 81

6.1.2 时间函数as.POSIXlt()和as.POSIXct() 82

6.2 日期格式转换 83

6.2.1 as.Date()函数 83

6.2.2 format()函数 85

6.2.3 其他函数 85

6.3 生成日期时间 86

6.3.1 生成日期序列 86

6.3.2 生成时间序列 87

6.3.3 创建时间序列对象 87

6.4 日期时间运算 88

6.4.1 日期直接相减 88

6.4.2 使用difftime()函数计算时间差 89

6.5 日期时间处理包—lubridate包 89

6.5.1 提取日期和时间 89

6.5.2 解析日期和时间 90

6.5.3 时间日期计算 92

6.5.4 时间间隔 93

6.5.5 时区的操作 93

6.6 时间序列基础包—zoo包 94

6.6.1 创建时间序列 95

6.6.2 类型转换 96

6.6.3 数据操作 97

6.7 时间序列扩展包—xts包 100

6.7.1 创建时间序列 100

6.7.2 xts包的基本操作 100

6.7.3 按时间统计数据 102

6.7.4 更改时间周期 103

6.8 要点回顾 104

第2篇 核心技术

第7章 获取数据 106

视频讲解:39分钟

7.1 手动输入数据 106

7.1.1 数据编辑器 106

7.1.2 在代码中直接输入数据 107

7.2 读取外部数据 108

7.2.1 读取文本文件、CSV文件 108

7.2.2 读取Excel文件 110

7.2.3 读取SPSS文件 111

7.2.4 读取Stata文件 112

7.2.5 读取SAS文件 113

7.2.6 导入数据库中的数据 114

7.2.7 读取XML文件 117

7.3 R语言自带的数据集 118

7.3.1 数据集介绍 118

7.3.2 mtcars数据集 120

7.4 要点回顾 120

第8章 数据处理与清洗 121

视频讲解:73分钟

8.1 查看数据概况 121

8.1.1 查看数据的基本信息 121

8.1.2 查看摘要信息 123

8.1.3 查看数据整体概况 123

8.2 数据清洗 124

8.2.1 缺失值的检测与处理 124

8.2.2 重复值的检测与处理 126

8.2.3 异常值的检测与处理 127

8.2.4 数据排序 128

8.2.5 数据抽样 130

8.3 字符串处理—stringr包 131

8.3.1 stringr包中的字符串处理函数 131

8.3.2 字符串替换函数str_sub() 132

8.3.3 字符串分割函数str_split() 133

8.3.4 正则表达式的应用 134

8.4 数据合并与拆分 136

8.4.1 数据合并 136

8.4.2 数据拆分 139

8.4.3 数据分段 140

8.5 数据转换与重塑 141

8.5.1 将数据转换为数字格式 141

8.5.2 数据转置 142

8.5.3 数据整合 142

8.6 要点回顾 143

第9章 数据计算与分组统计 144

视频讲解:58分钟

9.1 数据计算 144

9.1.1 求和 144

9.1.2 求均值 147

9.1.3 求最大值 148

9.1.4 求最小值 148

9.1.5 求中位数 149

9.1.6 求众数 149

9.1.7 求方差 150

9.1.8 求标准差 151

9.1.9 求分位数 152

9.1.10 求多个计算结果 152

9.2 数据分组统计 153

9.2.1 apply()、tapply()、sapply()、lapply()函数 153

9.2.2 分组统计函数aggregate() 154

9.2.3 分组函数group_by() 156

9.3 数据透视表 156

9.3.1 dcast()函数 157

9.3.2 gather()函数 158

9.3.3 spread()函数 158

9.4 要点回顾 159

第10章 基本绘图 160

视频讲解:88分钟

10.1 图表的常用设置 160

10.1.1 基本绘图函数plot() 160

10.1.2 设置画布 164

10.1.3 设置坐标轴 164

10.1.4 添加文本标签 166

10.1.5 设置标题和图例 167

10.1.6 设置参考线 169

10.1.7 保存图表 169

10.2 基础图表的绘制 170

10.2.1 折线图 170

10.2.2 柱形图 171

10.2.3 饼形图 173

10.3 统计分布图的绘制 175

10.3.1 直方图 176

10.3.2 散点图 177

10.3.3 箱形图 178

10.4 多子图的绘制 182

10.4.1 par()函数 182

10.4.2 layout()函数 184

10.5 要点回顾 186

第11章 ggplot2高级绘图 187

视频讲解:95分钟

11.1 ggplot2入门 187

11.1.1 ggplot2概述 187

11.1.2 安装ggplot2 188

11.1.3 ggplot2绘图流程 188

11.1.4 ggplot2基本语法 189

11.1.5 ggplot2常用绘图函数 189

11.2 ggplot2绘图的基本设置 191

11.2.1 标题 191

11.2.2 坐标轴 192

11.2.3 添加文本标签 193

11.2.4 图例 194

11.2.5 更改字体大小 196

11.2.6 主题 197

11.2.7 保存图形 199

11.3 使用ggplot2绘制图表 199

11.3.1 折线图 199

11.3.2 散点图 203

11.3.3 柱形图 205

11.3.4 直方图 208

11.3.5 箱形图 209

11.3.6 面积图 210

11.3.7 密度图 211

11.3.8 小提琴图 213

11.4 使用ggplot2绘制分面图 214

11.4.1 facet_grid()函数 214

11.4.2 facet_wrap()函数 216

11.5 要点回顾 218

第12章 lattice高级绘图 219

视频讲解:60分钟

12.1 lattice入门 219

12.2 使用lattice绘制图表 220

12.2.1 散点图 220

12.2.2 散点图矩阵 222

12.2.3 条形图 222

12.2.4 箱形图 224

12.2.5 点图 225

12.2.6 直方图 225

12.2.7 核密度图 226

12.2.8 条纹图 227

12.2.9 平行坐标图 227

12.2.10 3D绘图 227

12.3 lattice绘图的常用设置 229

12.3.1 lattice绘图的组成部分 229

12.3.2 标题设置 229

12.3.3 坐标轴设置 230

12.3.4 图例设置 230

12.3.5 颜色符号和线条设置 232

12.3.6 条件变量 233

12.3.7 分组变量 234

12.3.8 面板设置 234

12.4 使用lattice绘制多子图 236

12.4.1 plot()函数 236

12.4.2 ggarrange()函数 237

12.5 要点回顾 237

第13章 基础统计分析 238

视频讲解:65分钟

13.1 描述性统计分析 238

13.1.1 summary()函数 238

13.1.2 describe()函数 239

13.1.3 stat.desc()函数 240

13.1.4 分组计算描述性统计量 241

13.2 概率与数据分布 243

13.2.1 概率 243

13.2.2 数据分布概述 243

13.2.3 正态分布 245

13.2.4 二项分布 246

13.2.5 泊松分布 246

13.3 列联表和频数表 247

13.3.1 table()函数 247

13.3.2 ftable()函数 248

13.3.3 xtab()函数 248

13.4 独立性检验 248

13.4.1 卡方检验 249

13.4.2 Fisher精确检验 249

13.4.3 Cochran-Manel-Haenszel检验 250

13.5 相关性分析 250

13.5.1 相关系数 251

13.5.2 相关性分析 253

13.6 t检验 255

13.6.1 独立样本的t检验 255

13.6.2 非独立样本的t检验 256

13.7 要点回顾 257

第3篇 高级应用

第14章 方差分析 260

视频讲解:43分钟

14.1 方差分析概述 260

14.1.1 方差分析的概念 260

14.1.2 常见术语 260

14.1.3 方差分析表 261

14.2 方差分析的基本流程 262

14.3 aov()函数 262

14.4 单因素方差分析 263

14.4.1 正态性检验 264

14.4.2 方差齐性检验 267

14.4.3 单因素方差分析案例 268

14.5 双因素方差分析 271

14.5.1 主效应分析 271

14.5.2 交互效应分析 273

14.6 要点回顾 273

第15章 回归分析 274

视频讲解:35分钟

15.1 回归分析概述 274

15.1.1 什么是回归分析 274

15.1.2 回归分析的应用 275

15.2 回归分析的基本流程 275

15.3 假设检验 276

15.3.1 线性关系 276

15.3.2 评估模型性能 277

15.3.3 多重共线性检验 278

15.4 一元线性回归 278

15.4.1 lm()函数 279

15.4.2 predict()函数 280

15.4.3 一元线性回归案例 280

15.4.4 predict()函数错误调试 282

15.5 多元线性回归 283

15.5.1 相关系数矩阵 283

15.5.2 散点图矩阵 284

15.5.3 多元线性回归案例 285

15.6 要点回顾 290

第16章 时间序列分析 291

视频讲解:73分钟

16.1 时间序列分析概述 291

16.1.1 什么是时间序列分析 291

16.1.2 时间序列分析的应用领域 292

16.2 时间序列的基本操作 292

16.2.1 转换时间序列 292

16.2.2 绘制时间序列图 293

16.3 平稳性检验 294

16.3.1 时序图 294

16.3.2 自相关图与acf()函数 295

16.3.3 偏自相关图与pacf()函数 297

16.3.4 单位根检验 298

16.4 差分 300

16.4.1 什么是差分 300

16.4.2 计算差分函数ndiffs() 300

16.4.3 差分函数diff() 301

16.5 纯随机性检验 302

16.6 ARMA模型—自回归移动平均模型 302

16.6.1 什么是ARMA模型 302

16.6.2 ARMA建模流程 303

16.6.3 模型判定 303

16.6.4 建模函数arima() 304

16.6.5 自动定阶建模函数auto.arima() 304

16.6.6 模型检验 305

16.6.7 预测函数forecast() 306

16.6.8 尼罗河流量分析案例 306

16.7 ARIMA模型—自回归差分移动平均模型 310

16.7.1 什么是ARIMA模型 310

16.7.2 ARIMA模型的应用 310

16.7.3 大气中CO2含量趋势分析案例 310

16.8 非平稳时间序列分析 312

16.8.1 非平稳时间序列概述 312

16.8.2 分解时间序列函数decompose() 312

16.8.3 指数平滑模型HoltWinters() 315

16.8.4 基于指数平滑模型预测销售额 315

16.9 要点回顾 317