Chapter01基本概念
1-1BigData的起源2
1-2R語言之美2
1-3R語言的起源2
1-4R的運行環境5
1-5R的擴展5
1-6本書的學習目標5
本章習題6
Chapter02第一次使用R
2-1第一次啟動R8
2-1-1在MacOS下啟動R8
2-1-2在MacOS下啟動RStudio8
2-1-3在Windows環境中啟動R和RStudio9
2-2認識RStudio環境10
2-3第一次使用R12
2-4R語言的對象設定15
2-5Workspace窗口16
2-6結束RStudio18
2-7保存工作成果19
2-7-1使用save()函數保存工作成果19
2-7-2使用saveimage()函數保存Workspace20
2-7-3下載之前保存的工作20
2-8歷史記錄21
2-9程序注釋22
本章習題24
Chapter03R的基本數學運算
3-1對象命名原則28
3-2基本數學運算28
4
R語言——邁向大數據之路
3-2-1四則運算28
3-2-2余數和整除29
3-2-3次方或平方根29
3-2-4絕對值30
3-2-5exp()與對數30
3-2-6科學符號e31
3-2-7圓周率與三角函數32
3-2-8四舍五入函數32
3-2-9近似函數33
3-2-10階乘34
3-3R語言控制運算的優先級34
3-4無限大Infinity35
3-5NotaNumber(NaN)36
3-6NotAvailable(NA)37
本章習題39
Chapter04向量對象運算
4-1數值型的向量對象44
4-1-1建立規則型的數值向量對象應使用序列符號44
4-1-2簡單向量對象的運算45
4-1-3建立向量對象函數seq()46
4-1-4連接向量對象函數c()47
4-1-5重復向量對象函數rep()48
4-1-6numeric()函數48
4-1-7程序語句跨行的處理49
4-2常見向量對象的數學運算函數50
4-3考慮Inf、-Inf、NA的向量運算53
4-4R語言的字符串數據的屬性54
4-5探索對象的屬性55
4-5-1探索對象元素的屬性55
4-5-2探索對象的結構56
4-5-3探索對象的數據類型57
4-6向量對象元素的存取57
4-6-1使用索引取得向量對象的元素57
4-6-2使用負索引挖掘向量對象內的部分元素58
5
目錄
4-6-3修改向量對象元素值59
4-6-4認識系統內建的數據集letters和LETTERS60
4-7邏輯向量(LogicalVector)61
4-7-1基本應用61
4-7-2對Inf、-Inf和缺失值NA的處理63
4-7-3多組邏輯表達式的應用64
4-7-4NOT表達式65
4-7-5邏輯值TRUE和FALSE的運算65
4-8不同長度向量對象相乘的應用66
4-9向量對象的元素名稱67
4-9-1建立簡單含元素名稱的向量對象67
4-9-2names()函數67
4-9-3使用系統內建的數據集islands68
本章習題71
Chapter05處理矩陣與更高維數據
5-1矩陣Matrix78
5-1-1建立矩陣78
5-1-2認識矩陣的屬性79
5-1-3將向量組成矩陣81
5-2取得矩陣元素的值82
5-2-1矩陣元素的取得82
5-2-2使用負索引取得矩陣元素83
5-3修改矩陣的元素值84
5-4降低矩陣的維度86
5-5矩陣的行名和列名87
5-5-1取得和修改矩陣對象的行名和列名88
5-5-2dimnames()函數89
5-6將行名或列名作為索引90
5-7矩陣的運算91
5-7-1矩陣與一般常數的四則運算91
5-7-2行(Row)和列(Column)的運算93
5-7-3轉置矩陣94
5-7-4%*%矩陣相乘94
5-7-5diag()95
6
R語言——邁向大數據之路
5-7-6solve()96
5-7-7det()97
5-8三維或高維數組97
5-8-1建立三維數組97
5-8-2identical()函數98
5-8-3取得三維數組的元素98
5-9再談class()函數99
本章習題101
Chapter06因子Factor
6-1使用factor()或asfactor()函數建立因子108
6-2指定缺失的Levels值109
6-3labels參數109
6-4因子的轉換110
6-5數值型因子在轉換時常見的錯誤110
6-6再看levels參數111
6-7有序因子(OrderedFactor)112
6-8table()函數113
6-9認識系統內建的數據集114
本章習題116
Chapter07數據框DataFrame
7-1認識數據框120
7-1-1建立第一個數據框120
7-1-2驗證與設置數據框的列名和行名121
7-2認識數據框的結構121
7-3取得數據框的內容122
7-3-1一般取得122
7-3-2特殊字符$123
7-3-3再看取得的數據123
7-4使用rbind()函數增加數據框的行數據124
7-5使用cbind()函數增加數據框的列數據125
7-5-1使用$符號126
7-5-2一次加多個列數據126
7-6再談轉置函數t()127
本章習題128
7
目錄
Chapter08串行List
8-1建立串行134
8-1-1建立串行對象——對象元素不含名稱134
8-1-2建立串行對象——對象元素含名稱134
8-1-3處理串行內對象元素的名稱135
8-1-4獲得串行的對象元素個數136
8-2獲得串行內對象的元素內容136
8-2-1使用“$”符號取得串行內對象的元素內容136
8-2-2使用“[[]]”符號取得串行內對象的元素內容137
8-2-3串行內對象的名稱也可當索引值137
8-2-4使用“[]”符號取得串行內對象的元素內容138
8-3編輯串行內對象的元素值139
8-3-1修改串行元素的內容139
8-3-2為串行增加更多元素141
8-3-3刪除串行內的元素144
8-4串行合并145
8-5解析串行的內容結構146
本章習題148
Chapter09進階字符串的處理
9-1語句的分割154
9-2修改字符串的大小寫154
9-3unique()函數的使用155
9-4字符串的連接155
9-4-1使用paste()函數常見的失敗實例1155
9-4-2使用paste()函數常見的失敗實例2156
9-4-3字符串的成功連接與collapse參數156
9-4-4再談paste()函數157
9-4-5撲克牌向量有趣的應用158
9-5字符串數據的排序158
9-6搜索字符串的內容159
9-6-1使用索引值搜索160
9-6-2使用grep()函數搜索160
9-7字符串內容的更改161
9-8正則表達式(RegularExpression)162
8
R語言——邁向大數據之路
9-8-1搜索具有可選擇性162
9-8-2搜索分類字符串163
9-8-3搜索部分字符可重復的字符串163
本章習題164
Chapter10日期和時間的處理
10-1日期的設置與使用170
10-1-1asDate()函數170
10-1-2weekdays()函數170
10-1-3months()函數171
10-1-4quarters()函數171
10-1-5Syslocaleconv()函數171
10-1-6SysDate()函數172
10-1-7再談seq()函數172
10-1-8使用不同格式表示日期173
10-2時間的設置與使用173
10-2-1Systime()函數174
10-2-2asPOSIXct()函數174
10-2-3時間也是可以作比較的175
10-2-4seq()函數與時間175
10-2-5asPOSIXlt()函數175
10-3時間序列177
本章習題180
Chapter11編寫自己的函數
11-1正式編寫程序184
11-2函數的基本組成184
11-3設計第一個函數185
11-4函數也是一個對象186
11-5程序代碼的簡化187
11-6return()的功能188
11-7省略函數的大括號189
11-8傳遞多個函數參數的應用190
11-8-1設計可傳遞兩個參數的函數190
11-8-2函數參數的默認值191
9
目錄
11-8-33點參數“”的使用192
11-9函數也可以作為參數194
11-9-1正式實例應用194
11-9-2以函數的程序代碼作為參數傳送195
11-10局部變量和全局變量195
11-11通用函數(GenericFunction)196
11-11-1認識通用函數print()197
11-11-2通用函數的默認函數198
11-12設計第一個通用函數198
11-12-1優化轉換百分比函數199
11-12-2設計通用函數的默認函數200
本章習題202
Chapter12程序的流程控制
12-1if語句208
12-1-1if語句的基本操作208
12-1-2if…else語句210
12-1-3if語句也可有返回值212
12-1-4if…elseif…elseif…else213
12-1-5嵌套式if語句214
12-2遞歸式函數的設計215
12-3向量化的邏輯表達式217
12-3-1處理向量數據時if…else產生的錯誤217
12-3-2ifelse()函數217
12-4switch語句219
12-5for循環221
12-6while循環224
12-7repeat循環225
12-8再談break語句226
12-9next語句227
本章習題228
Chapter13認識apply家族
13-1apply()函數234
13-2sapply()函數236
13-3lapply()函數238
10
R語言——邁向大數據之路
13-4tapply()函數238
13-5iris鳶尾花數據集240
本章習題242
Chapter14輸入與輸出
14-1認識文件夾248
14-1-1getwd()函數248
14-1-2setwd()函數248
14-1-3filepath()函數248
14-1-4dir()函數248
14-1-5listfiles()函數249
14-1-6fileexist()函數250
14-1-7filerename()函數250
14-1-8filecreate()函數250
14-1-9filecopy()函數250
14-1-10fileremove()函數251
14-2數據輸出cat()函數251
14-3讀取數據scan()函數253
14-4輸出數據write()函數256
14-5數據的輸入257
14-5-1讀取剪貼板數據257
14-5-2讀取剪貼板數據readtable()函數258
14-5-3讀取Excel文件數據259
14-5-4認識CSV文件以及如何讀取Excel文件數據260
14-5-5認識delim文件以及如何讀取Excel文件數據262
14-6數據的輸出263
14-6-1writeClipboard()函數263
14-6-2writetable()函數264
14-7處理其他數據265
本章習題272
Chapter15數據分析與處理
15-1復習數據類型276
15-2隨機抽樣276
15-2-1將隨機抽樣應用于撲克牌277
11