●譯者序
序
前言
致謝
第1章 獲取R語言 1
1.1 下載R語言 1
1.2 R語言版本 2
1.3 32位與64位 2
1.4 安裝R語言 2
1.4.1 在Windows繫統上安裝 2
1.4.2 在Mac OS X繫統上安裝 5
1.4.3 在Linux繫統上安裝 8
1.5 微軟開源R語言 10
1.6 小結 10
第2章 R語言環境 11
2.1 命令行界面 12
2.2 RStudio 13
2.2.1 RStudio項目 14
2.2.2 RStudio工具 16
2.2.3 Git集成 20
2.3 微軟Visual Studio 22
2.4 小結 22
第3章 R語言包 23
3.1 安裝R語言包 23
3.2 加載R語言包 25
3.3 構建R語言包 26
3.4 小結 26
第4章 R語言基礎 27
4.1 基本數學運算 27
4.2 變量 28
4.2.1 變量賦值 28
4.2.2 刪除變量 29
4.3 數據類型 30
4.3.1 數值型 30
4.3.2 字符型 31
4.3.3 日期型 32
4.3.4 邏輯型 32
4.4 向量 34
4.4.1 向量操作 34
4.4.2 factor向量 37
4.5 函數調用 38
4.6 函數文檔 38
4.7 缺失數據 39
4.7.1 NA 39
4.7.2 NULL 40
4.8 管道 40
4.9 小結 41
第5章 高級數據結構 42
5.1 數據框 42
5.2 列表 48
5.3 矩陣 53
5.4 數組 56
5.5 小結 56
第6章 R語言讀取數據 57
6.1 讀取CSV文件 57
6.1.1 read_delim函數 59
6.1.2 fread函數 60
6.2 讀取Excel數據 60
6.3 讀取數據庫數據 62
6.4 讀取其他統計工具的數據 64
6.5 讀取R語言二進制文件 65
6.6 讀取R語言數據 67
6.7 讀取網頁數據 68
6.7.1 讀取HTML表格 68
6.7.2 抽取網頁數據 69
6.8 讀取JSON數據 70
6.9 小結 72
第7章 統計圖 73
7.1 基礎統計圖 73
7.1.1 基礎直方圖 74
7.1.2 基礎散點圖 74
7.1.3 箱線圖 75
7.2 ggplot2 75
7.2.1 ggplot2:直方圖和核密度曲線 76
7.2.2 ggplot2:散點圖 77
7.2.3 ggplot2:箱線圖和小提琴圖 79
7.2.4 ggplot2:曲線圖 82
7.2.5 主題 83
7.3 小結 84
第8章 編寫R語言函數 85
8.1 Hello,World! 85
8.2 函數參數 86
8.2.1 默認參數 87
8.2.2 額外參數 87
8.3 返回值 88
8.4 do.call函數 89
8.5 小結 89
第9章 控制語句 90
9.1 if和else語句 90
9.2 switch語句 92
9.3 ifelse函數 94
9.4 復合檢查 95
9.5 小結 95
第10章 R語言的循環迭代 96
10.1 for循環 96
10.2 while循環 97
10.3 控制循環 98
10.4 小結 99
第11章 分組操作 100
11.1 apply函數族 100
11.1.1 apply函數 100
11.1.2 lapply和sapply函數 101
11.1.3 mapply函數 102
11.1.4 其他的apply函數 102
11.2 aggregate函數 103
11.3 plyr包 105
11.3.1 ddply函數 106
11.3.2 llply函數 108
11.3.3 plyr的輔助函數 109
11.3.4 速度與便利性 109
11.4 data.table包 109
11.4.1 鍵值 113
11.4.2 data.table聚合 115
11.5 小結 117
第12章 高效的分組操作:dplyr 118
12.1 管道 118
12.2 tbl數據類型 119
12.3 select函數 120
12.4 f?ilter函數 127
12.5 slice函數 131
12.6 mutate函數 132
12.7 summarize函數 135
12.8 group_by函數 136
12.9 arrange函數 137
12.10 do函數 137
12.11 dplyr使用數據庫 139
12.12 小結 140
第13章 數據迭代 141
13.1 map函數 141
13.2 特定類型的map函數 143
13.2.1 map_int函數 144
13.2.2 map_dbl函數 144
13.2.3 map_chr函數 144
13.2.4 map_lgl函數 145
13.2.5 map_df函數 145
13.2.6 map_if函數 146
13.3 數據框的迭代 147
13.4 map函數的多輸入 148
13.5 小結 149
第14章 數據整理 150
14.1 cbind和rbind 150
14.2 連接 151
14.2.1 合並 152
14.2.2 plyr中的join 152
14.2.3 合並表 156
14.3 reshape2 157
14.3.1 melt函數 157
14.3.2 dcast函數 159
14.4 小結 160
第15章 數據重構:Tidyverse 161
15.1 合並行和列數據 161
15.2 用dplyr包連接 162
15.3 行列變換 166
15.4 小結 169
第16章 字符串操作 170
16.1 paste 170
16.2 把格式數據寫成串(sprintf) 171
16.3 提取文本 172
16.4 正則表達式 175
16.5 小結 181
第17章 概率分布 182
17.1 正態分布 182
17.2 二項分布 186
17.3 泊松分布 190
17.4 其他分布 192
17.5 小結 194
第18章 基本統計 195
18.1 概括性統計量 195
18.2 相關繫數和協方差 198
18.3 t-檢驗 205
18.3.1 單樣本t-檢驗 206
18.3.2 兩樣本t-檢驗 208
18.3.3 兩配對樣本t-檢驗 210
18.4 方差分析 211
18.5 小結 213
第19章 線性模型 214
19.1 簡單線性回歸 214
19.回歸 219
19.3 小結 234
第20章 廣義線性模型 235
20.1 邏輯斯蒂回歸 235
20.2 泊松回歸 238
20.3 其他的廣義線性模型 241
20.4 生存分析 242
20.5 小結 246
第21章 模型診斷 247
21.1 殘差 247
21.2 模型比較 252
21.3 交叉驗證 255
21.4 Bootstrap 259
21.5 逐步變量選擇 262
21.6 小結 264
第22章 正則化和壓縮 265
22.1 彈性網絡 265
22.2 貝葉斯壓縮 279
22.3 小結 282
第23章 非線性模型 283
23.1 非線性最小二乘法 283
23.2 樣條插值 285
23.3 廣義相加模型 288
23.4 決策樹 293
23.5 boost樹 295
23.6 隨機森林 298
23.7 小結 299
第24章 時間序列和自相關 301
24.1 自回歸移動平均模型 301
24.2 向量自回歸 306
24.3 廣義自回歸異方差模型 311
24.4 小結 317
第25章 聚類 318
25.1 k-均值 318
25.2 PAM 325
25.3 分層聚類 329
25.4 小結 332
第26章 模型擬合調優:caret 333
26.1 caret介紹 333
26.2 caret選項 333
26.2.1 caret訓練控制 334
26.2.2 caret網格搜索 334
26.3 boost樹調優 335
26.4 小結 338
第27章 可重復性報告:knitr 339
27.1 安裝LaTeX 339
27.2 LaTeX基礎 340
27.3 knitr中使用LaTeX 342
27.4 小結 346
第28章 R語言文檔:RMarkdown 347
28.1 文檔編譯 347
28.2 文檔頭信息 347
28.3 Markdown入門 348
28.4 Markdown代碼塊 350
28.5 htmlwidgets 351
28.5.1 表數據 352
28.5.2 leaflet 354
28.5.3 dygraphs 356
28.5.4 threejs 358
28.5.5 d3heatmap 360
28.6 RMarkdown幻燈片 361
28.7 小結 362
第29章 交互式dashboard:Shiny 363
29.1 在RMarkdown中使用Shiny 363
29.2 Shiny中的響應表達式 366
29.3 服務端和UI界面 368
29.4 小結 376
第30章 構建R包 377
30.1 目錄結構 377
30.2 包文件 378
30.2.1 DESCRIPTION文件 378
30.2.2 NAMESPACE文件 380
30.2.3 其他包文件 382
30.3 包文檔 384
30.4 測試 386
30.5 包的檢查、構建和安裝 388
30.6 提交至CRAN 389
30.7 C++代碼 390
30.7.1 sourceCpp 390
30.7.2 編譯包 392
30.8 小結 394
附錄A 相關資源 395