目錄
第 1 章 R 軟體簡介....................................................................................... 1
1.1 R 軟體與 R 程式架構............................................................................ 1
1.2 一個簡單的 R 程式................................................................................ 2
1.3 R 軟體的特色........................................................................................ 5
1.4 R 程式的特性與撰寫規則....................................................................... 7
1.5 為何要學程式語言.................................................................................. 9
1.6 程式語言的五個基本功能..................................................................... 11
1.7 兩個簡單的 R 程式.............................................................................. 11
1.8 功能架構完整的範例 R 程式................................................................ 13
第 2 章 R 軟體操作方式.............................................................................. 17
2.1 R-GUI:圖形使用者界面....................................................................... 17
2.2 文字互動模式....................................................................................... 21
2.3 批次執行模式(Batch Mode)................................................................. 22
2.4 source 函數:執行外部程式檔........................................................... 24
2.5 sink 函數:紀錄程式執行結果............................................................. 25
2.6 help 與 demo功能............................................................................. 25
2.7 R 軟體的套件 (Packages).................................................................... 27
2.7.1 使用套件內的函數......................................................................... 27
2.7.2 安裝套件....................................................................................... 28
2.8 data 函數:使用內建資料檔................................................................ 30
2.9 R 軟體的升級與更新............................................................................ 32
2.10 R 軟體環境設定................................................................................... 33
第 3 章 R 軟體基本運算.............................................................................. 35
3.1 簡單的數字與字串運算......................................................................... 35
3.2 有序數列:規則性的數字集合.............................................................. 36
3.3 基本向量 (vector) 運算...................................................................... 38
3.4 向量的指標用法................................................................................... 40
3.5 基本統計計算範例................................................................................ 40
第 4 章 R 的變數與資料.............................................................................. 43
4.1 統計資料 vs. R 變數............................................................................ 43
4.2 R 軟體的變數種類................................................................................ 45
4.2.1 R 軟體的資料屬性........................................................................ 46
4.2.2 一般變數....................................................................................... 46
4.2.3 向量變數(Vector)........................................................................... 47
4.2.4 陣列變數(Array)............................................................................. 50
4.2.5 矩陣變數(Matrix)........................................................................... 55
4.2.6 因子變數(Factor)............................................................................ 61
4.2.7 串列變數(List)................................................................................ 64
4.2.8 資料框架變數(Data-Frame)............................................................. 67
4.2.9 時間數列變數(ts)...................................................................... 71
4.3 指標系統:找出物件的元素.................................................................. 72
4.4 與變數有關的工具函數......................................................................... 75
4.4.1 is 與 as 系列的工具函數.............................................................. 75
4.4.2 查詢或設定類別與屬性.................................................................. 79
4.4.3 查詢或設定行列名稱..................................................................... 81
4.4.4 which 系列指標工具函數............................................................... 82
4.5 表格型態的彙整資料(table)................................................................. 85
第 5 章 資料的輸入與輸出.......................................................................... 91
5.1 外部檔案路徑 vs. file.choose 函數.................................................... 91
5.2 單一變數的資料輸入與輸出.................................................................. 93
5.2.1 scan 函數:資料輸入.................................................................... 93
5.2.2 write 函數:簡單輸出到外部文字檔.............................................. 96
5.3 多變數的資料輸入與簡單輸出.............................................................. 98
5.3.1 多變數資料的輸入(Input).......................................................... 98
5.3.2 多變數資料的輸出(Output)...................................................... 101
5.4 存取 R 軟體的資料格式:rda 檔...................................................... 102
5.5 存取其他軟體的資料檔....................................................................... 103
5.5.1 Excel 資料檔............................................................................... 103
5.5.2 S-Plus、SAS、SPSS 等商業統計軟體.............................................. 107
第 6 章 資料轉換與處理............................................................................ 109
6.1 重新編碼:Recode............................................................................. 109
6.1.1 使用邏輯判斷式.......................................................................... 109
6.1.2 使用 cut( ) 函數.......................................................................... 111
6.1.3 使用 car 套件的 recode 函數..................................................... 113
6.2 排序:sort、rank、order、rev...................................................... 115
6.3 資料變形(Reshape)........................................................................ 117
6.3.1 變數型態轉換.............................................................................. 117
6.3.2 進階的資料變形方法................................................................... 118
6.4 資料的合併......................................................................................... 125
6.4.1 c、union、cbind、或 rbind 函數.................................................. 125
6.4.2 合併
data.frame 變數(Merge)...................................................... 126
6.5 切割 (subsetting)............................................................................. 129
6.5.1 使用 split 函數來切割資料.......................................................... 129
6.5.2 使用指標來切割資料................................................................... 130
6.5.3 使用邏輯值來切割資料................................................................ 132
6.5.4 使用 subset 函數........................................................................ 135
第 7 章 R 程式流程控制............................................................................ 137
7.1 expression 與 statement................................................................. 137
7.1.1 邏輯判斷式
(expression) 的寫法................................................... 138
7.2 條件執行(conditional execution).................................................... 140
7.2.1 ifelse 函數................................................................................... 141
7.2.2 if, else if, 與else............................................................................ 142
7.2.3 if + else 可能的錯誤寫法.............................................................. 144
7.2.4 switch.......................................................................................... 146
7.3 迴圈結構(Loop).................................................................................. 147
7.3.1 for 迴圈...................................................................................... 148
7.3.2 while 與 repeat 迴圈.................................................................. 149
7.3.3 break 與 next:改變迴圈狀態..................................................... 151
第 8 章 R 的自訂函數................................................................................ 153
8.1 R 的自訂函數語法.............................................................................. 153
8.2 簡單的 R 函數................................................................................... 154
8.3 函數的參數預設值.............................................................................. 155
8.4 函數內變數的有效範圍....................................................................... 156
8.5 特殊的函數用法.................................................................................. 156
8.6 R 函數的其他特性.............................................................................. 159
第 9 章 R 軟體的繪圖功能......................................................................... 161
9.1 par 圖形設定函數.............................................................................. 161
9.1.1 mai 與 mar 選項........................................................................ 161
9.1.2 mfcol 與 mfrow 參數.................................................................. 162
9.1.3 多張圖形放在同一頁................................................................... 163
9.2 圖形基本設定參數.............................................................................. 167
9.3 高階繪圖函數..................................................................................... 168
9.3.1 plot 函數..................................................................................... 168
9.3.2 curve 函數曲線........................................................................... 170
9.3.3 pairs 矩陣圖................................................................................ 171
9.3.4 coplot: conditioning plot................................................................. 172
9.3.5 qqnorm、qqline、與 qqplot.......................................................... 172
9.3.6 hist直方圖(histogram)................................................................... 173
9.3.7 dotplot 點狀圖............................................................................ 173
9.3.8 barplot 長條圖............................................................................ 174
9.3.9 boxplot 盒鬚圖............................................................................ 175
9.3.10 pie 圓餅圖.................................................................................. 176
9.3.11 3D 繪圖:image、contour、persp................................................ 177
9.4 高階繪圖函數共用的輔助參數............................................................. 179
9.5 附加圖形:低階繪圖函數.................................................................... 181
9.5.1 points、lines、與 text.................................................................. 181
9.5.2 abline 函數.................................................................................. 184
9.5.3 polygon:多邊形.......................................................................... 185
9.5.4 legend:圖形的說明方塊............................................................. 186
9.5.5 title 與 axis................................................................................. 187
9.6 互動式圖形與數學符號展示................................................................ 188
9.7 繪圖設備(Graphics Devices).............................................................. 193
第 10 章 常用函數與程式技巧..................................................................... 195
10.1 數學、統計、與彙整函數.................................................................... 195
10.2 常用的工具函數.................................................................................. 196
10.2.1 處理 NA 遺失值的函數............................................................... 196
10.2.2 處理 function 的函數.................................................................. 197
10.2.3 apply 系列函數與 aggregate........................................................ 199
10.2.4 table 系列函數............................................................................ 205
10.2.5 Optimization:求函數的極值........................................................ 213
10.3 文字與字串處理.................................................................................. 218
10.3.1 cat 訊息顯示函數........................................................................ 218
10.3.2 sprintf 函數................................................................................. 219
10.3.3 print.data.frame 函數.................................................................. 221
10.3.4 paste 函數 : 字串黏貼................................................................ 222
10.3.5 rep 重覆函數:repeat................................................................. 223
10.3.6 gl 函數:產生 Facotr 分類(levels)................................................ 223
10.3.7 substr、substring、strtrim............................................................. 224
10.3.8 strsplit: 字串切割函數.................................................................. 226
10.3.9 sub 與 grep:找尋或取代子字串................................................. 227
10.4 常見的 R 程式技巧............................................................................ 228
10.4.1 一般程式技巧.............................................................................. 228
10.4.2 字串轉成變數名稱或指令............................................................ 230
第 11 章 機率分配與統計模型..................................................................... 233
11.1 R 軟體的機率分配函數....................................................................... 233
11.2 R 軟體的統計模型寫法....................................................................... 237
11.2.1 線性模型寫法.............................................................................. 237
11.2.2 線性模式:lm 函數..................................................................... 240
第 12 章 機率計算........................................................................................ 249
12.1 排列與組合......................................................................................... 249
12.2 機率分配查表功能.............................................................................. 249
12.3 亂數產生器與隨機抽樣....................................................................... 252
12.3.1 隨機亂數產生器.......................................................................... 252
12.3.2 離散型 Uniform 隨機亂數........................................................... 253
12.3.3 簡單隨機抽樣.............................................................................. 254
12.4 機率分配 pdf 與 cdf 計算與圖形..................................................... 255
12.4.1 已知的理論機率分配之
pdf 與 cdf.............................................. 255
12.4.2 Empirical CDF:ecdf 函數............................................................. 257
12.5 機率收斂與中央極限定理.................................................................... 258
12.5.1 隨機變數的收斂.......................................................................... 258
12.5.2 中央極限定理.............................................................................. 260
12.6 機率值的逼近..................................................................................... 263
12.6.1 以 Normal 機率逼近
Binomial 機率............................................. 263
12.6.2 以 Poisson 機率逼近
Binomial 機率............................................. 264
12.7 判定資料的機率分配........................................................................... 265
12.8 判定資料的常態性(Normality)...................................................... 267
12.8.1 常態機率圖(Normal
Probability Plot).......................................... 267
12.8.2 常態性檢定................................................................................. 268
第 13 章 基本敘述統計................................................................................ 271
13.1 次數(Frequency) 計算....................................................................... 271
13.1.1 使用 xtabs 等函數作分組彙整..................................................... 271
13.1.2 使用 tabulate 與 table 函數....................................................... 274
13.1.3 利用 hist 計算分組次數.............................................................. 277
13.2 一般敘述統計量.................................................................................. 278
13.2.1 分組資料(Grouped
Data)............................................................... 283
第 14 章 統計推論........................................................................................ 287
14.1 單樣本推論......................................................................................... 287
14.1.1 母體平均數μ............................................................................... 288
14.1.2 母體比例 p................................................................................. 290
14.1.3 母體標準差σ................................................................................ 292
14.2 雙樣本推論......................................................................................... 294
14.2.1 雙樣本平均數與變異數檢定......................................................... 295
14.2.2 雙樣本配對 t 檢定...................................................................... 297
14.2.3 雙樣本母體比例差異檢定............................................................ 298
14.2.4 雙變數相關係數檢定................................................................... 299
14.2.5 雙樣本信賴區間.......................................................................... 300
14.3 信賴區間的意義.................................................................................. 305
14.4 卡方檢定............................................................................................ 307
14.4.1 適合度檢定................................................................................. 307
14.4.2 齊一性檢定................................................................................. 309
14.4.3 獨立性檢定................................................................................. 310
14.5 其他檢定............................................................................................ 311
第 15 章 迴歸分析........................................................................................ 315
15.1 迴歸分析常用函數.............................................................................. 315
15.2 簡單線性迴歸..................................................................................... 318
15.2.1 迴歸係數計算與推論................................................................... 320
15.2.2 殘差分析..................................................................................... 324
15.3 解釋變數選取..................................................................................... 325
15.3.1 向前、向後、逐步迴歸................................................................ 327
15.3.2 其他變數選取技巧....................................................................... 332
15.4 複迴歸模型分析.................................................................................. 332
15.4.1 變異數分解 與 partial F
test......................................................... 335
15.4.2 信賴區間與預測界限................................................................... 336
15.4.3 Box-Cox 轉換............................................................................... 339
15.5 殘差分析及其他檢驗........................................................................... 340
15.5.1 離群值(outliers)偵測..................................................................... 341
15.5.2 影響點偵測................................................................................. 345
15.5.3 共線性(Collinearity)....................................................................... 348
15.6 Logistic
Regression.......................................................................... 348
15.6.1 二元分類(Dichotomous)
應變數.................................................... 349
15.6.2 多分類(Polytomous)應變數....................................................... 354
15.6.3 順序型(Ordinal)應變數............................................................. 359
第 16 章 實驗設計........................................................................................ 371
16.1 ANOVA模型與線性模式的差異............................................................. 371
16.2 實驗設計函數彙整.............................................................................. 372
16.3 一因子設計......................................................................................... 373
16.3.1 傳統 ANOVA一因子模型.............................................................. 375
16.3.2 oneway.test 與 Kruskal-Wallis 無母數檢定.................................... 382
16.4 多重比較............................................................................................ 382
16.5 隨機集區設計..................................................................................... 387
16.6 拉丁方格設計..................................................................................... 394
16.7 二因子設計......................................................................................... 400
16.7.1 二因子設計:n = 1,沒有交互作用項........................................... 400
16.7.2 二因子設計:n >
1,有交互作用項............................................... 401
16.8 兩水準因子設計.................................................................................. 405
第 17 章 品質管制........................................................................................ 411
17.1 R 軟體的品質管制函數....................................................................... 411
17.2 魚骨圖與柏拉圖.................................................................................. 412
17.3 計量值管制圖..................................................................................... 413
17.4 計數值管制圖..................................................................................... 420
17.4.1 p、np、c、與 u 管制圖.............................................................. 420
17.4.2 缺失系統管制圖(Demerit
Chart)............................................... 423
17.5 單一觀察值管制圖.............................................................................. 426
17.5.1 X chart......................................................................................... 427
17.5.2 mr 移動全距管制圖..................................................................... 428
17.6 累積和 與 EWMA 管制圖................................................................... 429
第 18 章 時間數列........................................................................................ 431
18.1 R 軟體的時間數列函數....................................................................... 431
18.1.1 arima 函數中的 xreg 參數.......................................................... 431
18.1.2 複雜模型分析:TSA 套件的 arima 函數...................................... 432
18.1.3 常用的時間數列函數................................................................... 435
18.2 ARIMA 模型....................................................................................... 436
18.2.1 ARIMA 模型判斷......................................................................... 438
18.2.2 ARIMA 模型分析......................................................................... 442
18.2.3 殘差分析..................................................................................... 444
18.2.4 配適值與預測值計算................................................................... 447
18.3 時間數列+迴歸分析............................................................................ 449
18.3.1 解釋變數的程式寫法................................................................... 449
18.3.2 範例:台北捷運旅運量資料......................................................... 450
18.4 轉換函數模式..................................................................................... 453
18.4.1 轉換函數模式的程式表達............................................................ 453
18.4.2 瓦斯暖爐二氧化碳濃度資料......................................................... 453
18.5 介入事件模式..................................................................................... 457
18.5.1 範例:洛杉磯空氣污染資料......................................................... 458
18.6 離群值模式(Outliers)......................................................................... 463
18.6.1 離群值的偵測.............................................................................. 465
18.6.2 SCA 軟體偵測到的離群值............................................................ 468
18.7 ARCH 與 GARCH................................................................................ 471
第 19 章 資料探勘:決策樹......................................................................... 479
19.1 CART 決策樹...................................................................................... 479
19.2 CHAID 決策樹.................................................................................... 484
19.3 Random Forest 決策樹..................................................................... 487
附錄 A. 各類工具函數章節索引................................................................. 491
附錄 B. 數學常數與特殊函數..................................................................... 493
附錄 C. plotmath 數學符號..................................................................... 497