R語言數(shù)據(jù)分析、挖掘建模與可視化
定 價(jià):99 元
- 作者:劉順祥編著
- 出版時(shí)間:2021/1/1
- ISBN:9787302567622
- 出 版 社:清華大學(xué)出版社
- 中圖法分類:TP312R
- 頁碼:416
- 紙張:膠版紙
- 版次:1
- 開本:16K
本書循序漸進(jìn)地介紹R語言在數(shù)據(jù)分析與挖掘中的應(yīng)用,涵蓋數(shù)據(jù)分析與挖掘的常規(guī)流程,如數(shù)據(jù)預(yù)處理(清洗、整合與運(yùn)算等)、數(shù)據(jù)可視化(離散型與連續(xù)型數(shù)據(jù)的繪圖姿勢)、數(shù)據(jù)建模(十大數(shù)據(jù)挖掘模型的應(yīng)用)等內(nèi)容。本書共分15章:第1章介紹R語言的基礎(chǔ)知識,對于R語言初學(xué)者具有非常大的幫助;第2~4章講解R語言的數(shù)據(jù)讀寫操作和數(shù)據(jù)的清洗與整理(如缺失值、異常值的處理,數(shù)據(jù)的聚合匯總計(jì)算,正則表達(dá)式等);第5~6章重點(diǎn)闡述R語言中的繪圖神器ggplot2,詳細(xì)介紹繪圖模板和圖形的處理細(xì)節(jié);第9~15章講解十大常用數(shù)據(jù)挖掘模型,如回歸模型、樹模型、集成模型等。通過本書的學(xué)習(xí),讀者既可以掌握R語言的實(shí)操技巧,也可以掌握數(shù)據(jù)分析與挖掘的理論和應(yīng)用。 本書既適于統(tǒng)計(jì)學(xué)、數(shù)學(xué)、經(jīng)濟(jì)學(xué)、金融學(xué)、管理學(xué)以及相關(guān)理工科專業(yè)的本科生、研究生使用,也有助于提高從事數(shù)據(jù)咨詢、研究和分析等工作人士的專業(yè)水平和技能。
本書一共分為三大部分,系統(tǒng)地介紹數(shù)據(jù)分析與挖掘過程中所涉及的數(shù)據(jù)清洗、整理、可視化以及建模等環(huán)節(jié),具體內(nèi)容如下:
*部分(第1~4章)介紹R語言的一些基礎(chǔ)知識和使用技巧,內(nèi)容包含R語言中的數(shù)據(jù)結(jié)構(gòu)、控制流語句和自定義函數(shù)、apply簇函數(shù)的使用、外部數(shù)據(jù)的讀取、數(shù)據(jù)的清洗和整理以及正則表達(dá)式的使用。
第二部分(第5、6章)重點(diǎn)介紹繪圖包ggplot2的使用,詳細(xì)講解各種統(tǒng)計(jì)圖形的繪制方法(如條形圖、環(huán)形圖、瓦片圖、直方圖、小提琴圖、折線圖、面積圖、散點(diǎn)圖、地圖等),以及圖形繪制過程中的微調(diào)策略(如圖例位置的擺放、自定義顏色的調(diào)整、圖形形狀的選擇以及多圖形的組合等)。
第三部分(第7~15章)一共包含了10種數(shù)據(jù)挖掘算法的應(yīng)用,如線性回歸、決策樹、支持向量機(jī)、GBDT等。采用通俗易懂的手法介紹每一個(gè)挖掘算法的理論知識,并借助于具體的項(xiàng)目數(shù)據(jù)完成算法的實(shí)戰(zhàn)。本部分內(nèi)容既可以提高數(shù)據(jù)分析與挖掘的水平和技能,也可以作為數(shù)據(jù)挖掘算法實(shí)操的模板。
為什么寫這本書
曾記得第一次接觸R語言是2012年讀研的時(shí)候,學(xué)校開設(shè)了一門R軟件與統(tǒng)計(jì)應(yīng)用的課程,課堂上楊曉蓉老師采用深入淺出的教學(xué)方式將我們帶入到R語言的奇幻世界。之所以稱之為奇幻世界,是因?yàn)檫@門面向?qū)ο蟮木幊陶Z言是如此的簡單和強(qiáng)大,借助于R語言可以繪制各種高質(zhì)量的統(tǒng)計(jì)圖形、完成統(tǒng)計(jì)學(xué)中的各種假設(shè)檢驗(yàn)和模型構(gòu)建,甚至可以輕松落地各種機(jī)器學(xué)習(xí)算法的實(shí)戰(zhàn)。
當(dāng)筆者踏入社會(huì)、走上工作崗位之后,發(fā)現(xiàn)幾乎所有的數(shù)據(jù)分析或挖掘相關(guān)的崗位都要求應(yīng)聘者至少掌握一門統(tǒng)計(jì)類的分析工具,例如R語言、Python、SPSS以及SAS等。慶幸的是,自己在學(xué)校期間掌握了R語言的基本用法和統(tǒng)計(jì)建模,進(jìn)而使得自己順利地進(jìn)入一家乙方咨詢公司,開始了數(shù)據(jù)分析與挖掘之旅。所以,如果讀者想從事數(shù)據(jù)相關(guān)的崗位,還是需要掌握一門編程工具的。本書可以帶你從入門到進(jìn)階地學(xué)習(xí)和掌握R語言在工作中的使用。
在筆者看來,R語言絕對是一把大數(shù)據(jù)領(lǐng)域中的利器,其具有開源、簡潔易讀、快速上手、多場景應(yīng)用以及完善的生態(tài)和服務(wù)體系等優(yōu)點(diǎn),是在數(shù)據(jù)分析或挖掘工作中的佼佼者。利用R語言可以解決數(shù)據(jù)環(huán)節(jié)中的各項(xiàng)任務(wù),例如清洗各種常見的臟數(shù)據(jù)、繪制各式各樣的統(tǒng)計(jì)圖形,以及構(gòu)建各類有監(jiān)督、無監(jiān)督和半監(jiān)督的機(jī)器學(xué)習(xí)算法。所以說,利用R語言這把利器可以使你的數(shù)據(jù)分析或挖掘工作變得更加簡單,解決問題時(shí)也會(huì)游刃有余。
2015年9月份,筆者申請了微信公眾號,并取名為“數(shù)據(jù)分析1480”,目前已發(fā)布超過500篇文章,其中就有一部分R語言相關(guān)的內(nèi)容。自己寫公眾號的初衷主要有兩個(gè):一個(gè)是將自己所學(xué)、所知的內(nèi)容記錄下來,作為自己的知識沉淀;另一個(gè)是盡自己的微博之力,把記錄下來的點(diǎn)點(diǎn)滴滴分享給更多熱愛或從事數(shù)據(jù)分析或挖掘工具的朋友。遺憾的是,公眾號的內(nèi)容并沒有形成系統(tǒng)的知識框架,不過有幸遇到了清華大學(xué)出版社的王金柱老師,在他的鼓勵(lì)和支持下開始了本書的寫作,希望讀者能夠從中獲得所需的知識點(diǎn)。
本書的內(nèi)容
本書一共分為三大部分,系統(tǒng)地介紹數(shù)據(jù)分析與挖掘過程中所涉及的數(shù)據(jù)清洗、整理、可視化以及建模等環(huán)節(jié),具體內(nèi)容如下:
第一部分(第1~4章)介紹R語言的一些基礎(chǔ)知識和使用技巧,內(nèi)容包含R語言中的數(shù)據(jù)結(jié)構(gòu)、控制流語句和自定義函數(shù)、apply簇函數(shù)的使用、外部數(shù)據(jù)的讀取、數(shù)據(jù)的清洗和整理以及正則表達(dá)式的使用。
第二部分(第5、6章)重點(diǎn)介紹繪圖包ggplot2的使用,詳細(xì)講解各種統(tǒng)計(jì)圖形的繪制方法(如條形圖、環(huán)形圖、瓦片圖、直方圖、小提琴圖、折線圖、面積圖、散點(diǎn)圖、地圖等),以及圖形繪制過程中的微調(diào)策略(如圖例位置的擺放、自定義顏色的調(diào)整、圖形形狀的選擇以及多圖形的組合等)。
第三部分(第7~15章)一共包含了10種數(shù)據(jù)挖掘算法的應(yīng)用,如線性回歸、決策樹、支持向量機(jī)、GBDT等。采用通俗易懂的手法介紹每一個(gè)挖掘算法的理論知識,并借助于具體的項(xiàng)目數(shù)據(jù)完成算法的實(shí)戰(zhàn)。本部分內(nèi)容既可以提高數(shù)據(jù)分析與挖掘的水平和技能,也可以作為數(shù)據(jù)挖掘算法實(shí)操的模板。
配套資料下載
配套資源可掃描下方二維碼獲。
如果你在下載過程中遇到問題,可發(fā)送郵件至booksaga@126.com獲得幫助,郵件標(biāo)題為“R語言數(shù)據(jù)分析、挖掘建模與可視化”。
致謝
特別感謝清華大學(xué)出版社的王金柱老師,感謝他的熱情相邀和寶貴建議,他以專業(yè)而高效的審閱方式使本書增色不少。同時(shí)還要感謝為本書默默付出的其他出版工作者,在他們的努力和付出下,確保了本書的順利出版。
最后,感謝我的家人和朋友,尤其是我的妻子,是她在我遇到困難時(shí),給予我無私的鼓勵(lì)和支持,在寫書期間對我的照顧更是無微不至,使我能夠聚精會(huì)神地完成本書全部內(nèi)容的撰寫。
劉順祥(Sim Liu)
2020年8月于上海
劉順祥
統(tǒng)計(jì)學(xué)碩士,“數(shù)據(jù)分析1480”微信公眾號運(yùn)營者。曾就職于大數(shù)據(jù)咨詢公司,為聯(lián)想、亨氏、美麗田園、網(wǎng)魚網(wǎng)咖等企業(yè)項(xiàng)目提供服務(wù);曾在唯品會(huì)大數(shù)據(jù)部擔(dān)任數(shù)據(jù)分析師一職,負(fù)責(zé)電商支付環(huán)節(jié)的數(shù)據(jù)分析業(yè)務(wù)。
出版著作:《從零開始學(xué)Python數(shù)據(jù)分析與挖掘》。
第1章 R語言的必備基礎(chǔ)知識 1
1.1 R語言簡介 1
1.2 R軟件的下載與安裝 2
1.3 第三方包的下載與加載 4
1.3.1 手動(dòng)下載法 4
1.3.2 代碼下載法 4
1.3.3 第三方包的加載 5
1.4 如何查看幫助文檔 6
1.4.1 知包知函數(shù)——help函數(shù) 6
1.4.2 知函數(shù)未知包——help.search函數(shù) 6
1.4.3 知包未知函數(shù)——apropos函數(shù) 7
1.4.4 未知函數(shù)未知包——RSiteSearch函數(shù) 8
1.5 R語言中的數(shù)據(jù)結(jié)構(gòu) 9
1.5.1 向量的創(chuàng)建 9
1.5.2 向量元素的獲取 13
1.5.3 基于向量的數(shù)據(jù)類型轉(zhuǎn)換 15
1.5.4 向量的因子化轉(zhuǎn)換 18
1.5.5 基于向量的常用函數(shù) 20
1.6 矩陣的構(gòu)造 21
1.6.1 矩陣索引的使用 23
1.6.2 基于矩陣運(yùn)算的常用函數(shù) 24
1.7 數(shù)據(jù)框的構(gòu)造及常用函數(shù) 24
1.7.1 構(gòu)造數(shù)據(jù)框 24
1.7.2 基于數(shù)據(jù)框的常用函數(shù) 26
1.8 列表的構(gòu)造及索引的使用 30
1.8.1 列表的構(gòu)造 30
1.8.2 列表索引的使用 31
1.9 控制流語句及自定義函數(shù) 31
1.9.1 if分支 32
1.9.2 for循環(huán) 33
1.9.3 while循環(huán) 35
1.10 R語言中的自定義函數(shù) 37
1.11 巧用apply簇函數(shù) 38
1.11.1 tapply函數(shù)的使用 38
1.11.2 apply函數(shù)的使用 40
1.11.3 lapply與sapply函數(shù)的使用 42
1.12 教你一個(gè)爬蟲項(xiàng)目 44
1.13 篇章總結(jié) 46
第2章 數(shù)據(jù)的讀寫操作 47
2.1 文本文件數(shù)據(jù)的讀取 47
2.1.1 csv或txt格式的數(shù)據(jù)讀入 47
2.1.2 Json格式的數(shù)據(jù)讀入 53
2.2 Excel數(shù)據(jù)的讀取 56
2.2.1 xlsx包讀取Excel數(shù)據(jù) 56
2.2.2 readxl包讀取Excel數(shù)據(jù) 60
2.3 數(shù)據(jù)庫數(shù)據(jù)的讀取 63
2.3.1 讀取MySQL數(shù)據(jù)庫 63
2.3.2 讀取SQL Server數(shù)據(jù)庫 66
2.4 幾種常見的數(shù)據(jù)寫出格式 70
2.4.1 寫出至文本文件 70
2.4.2 寫出至電子表格Excel 71
2.4.3 寫出至數(shù)據(jù)庫 73
2.5 篇章總結(jié) 74
第3章 數(shù)據(jù)的清洗與管理 76
3.1 重復(fù)記錄的識別和處理 77
3.2 缺失值的識別 79
3.3 缺失值的處理辦法 82
3.3.1 刪除法 82
3.3.2 替換法 83
3.3.3 插補(bǔ)法 84
3.4 異常值的識別和處理 86
3.4.1 基于分位數(shù)法識別異常值 86
3.4.2 基于σ方法識別異常值 88
3.4.3 基于模型法識別異常值 90
3.4.4 異常值的處理辦法 92
3.5 數(shù)據(jù)形狀的重塑 93
3.5.1 reshape2包 93
3.5.2 Tidyr包 96
3.6 數(shù)據(jù)的聚合操作 97
3.6.1 基于aggregate函數(shù)的聚合 97
3.6.2 基于sqldf函數(shù)的聚合 99
3.6.3 基于group_by和summarize函數(shù)的聚合 101
3.7 數(shù)據(jù)的合并與連接 102
3.7.1 基于bind_rows函數(shù)的數(shù)據(jù)合并 102
3.7.2 基于*_join函數(shù)的數(shù)據(jù)連接 104
3.8 幾種常用的抽樣技術(shù) 106
3.8.1 簡單隨機(jī)抽樣 106
3.8.2 分層抽樣 107
3.8.3 整群抽樣 108
3.9 篇章總結(jié) 109
第4章 基于正則表達(dá)式的字符串處理技術(shù) 111
4.1 基于字符串位置的處理技術(shù) 112
4.1.1 數(shù)據(jù)截?cái)唷囟ㄎ恢玫淖哟@取 112
4.1.2 數(shù)據(jù)清洗——非常規(guī)的字符型轉(zhuǎn)數(shù)值型 114
4.1.3 數(shù)據(jù)清洗——字符串子串的隱藏 116
4.2 正則表達(dá)式的定義及用途 117
4.2.1 什么是正則表達(dá)式 117
4.2.2 正則表達(dá)式的常見用法 118
4.3 基于正則的單字符匹配 118
4.3.1 從靜態(tài)文本的匹配開始 118
4.3.2 任意單字符的匹配 121
4.3.3 指定字符集的匹配 122
4.4 字符匹配次數(shù)的設(shè)置 125
4.4.1 無上限的次數(shù)匹配 125
4.4.2 有限次數(shù)的匹配 128
4.5 其他正則符號的使用 131
4.6 篇章總結(jié) 132
第5章 數(shù)據(jù)可視化技術(shù)的應(yīng)用 134
5.1 條形圖的繪制 136
5.2 餅圖與環(huán)形圖的繪制 140
5.3 矩形圖與瓦片圖的繪制 141
5.4 直方圖與頻次多邊形圖的繪制 144
5.5 箱線圖與小提琴圖的繪制 147
5.6 折線圖與階梯圖的繪制 150
5.7 面積圖與帶狀圖的繪制 153
5.8 散點(diǎn)圖及氣泡圖的繪制 155
5.9 區(qū)塊頻次圖的繪制 160
5.10 核密度圖的繪制 163
5.11 QQ圖的繪制 165
5.12 篇章總結(jié) 166
第6章 可視化圖形的個(gè)性化調(diào)整 169
6.1 分面圖與組合圖的繪制 169
6.2 參考線和文本標(biāo)簽的添加 175
6.3 軸系統(tǒng)coord_*的設(shè)置 180
6.4 尺度scale_*的設(shè)置 182
6.5 顏色、形狀和線條類型的自定義設(shè)置 189
6.6 圖形主題的設(shè)置 191
6.7 有關(guān)圖例布局的調(diào)整 195
6.8 篇章總結(jié) 199
第7章 線性回歸模型的預(yù)測應(yīng)用 201
7.1 相關(guān)性分析 201
7.2 回歸性分析 202
7.3 線性回歸模型的介紹 203
7.4 回歸系數(shù)求解 204
7.4.1 構(gòu)造似然函數(shù) 205
7.4.2 取對數(shù)并整理 205
7.4.3 展開并求導(dǎo) 206
7.4.4 計(jì)算偏回歸系數(shù) 206
7.5 實(shí)戰(zhàn)案例——如何基于成本預(yù)測利潤 206
7.6 模型的顯著性檢驗(yàn)——F檢驗(yàn) 210
7.6.1 提出假設(shè) 210
7.6.2 構(gòu)造統(tǒng)計(jì)量 210
7.6.3 計(jì)算統(tǒng)計(jì)量 211
7.6.4 對比統(tǒng)計(jì)量的值和理論分布值 212
7.7 參數(shù)的顯著性檢驗(yàn)——t檢驗(yàn) 212
7.7.1 提出假設(shè) 212
7.7.2 構(gòu)造統(tǒng)計(jì)量 213
7.7.3 計(jì)算統(tǒng)計(jì)量 213
7.7.4 對比統(tǒng)計(jì)量的值和理論分布值 214
7.8 變量選擇——逐步回歸法 214
7.9 驗(yàn)證模型的各類假設(shè)前提 216
7.9.1 多重共線性檢驗(yàn) 216
7.9.2 正態(tài)性檢驗(yàn) 217
7.9.3 獨(dú)立性檢驗(yàn) 220
7.9.4 方差齊性檢驗(yàn) 220
7.10 模型的預(yù)測 222
7.11 篇章總結(jié) 223
第8章 嶺回歸與LASSO回歸模型 225
8.1 嶺回歸模型的介紹 225
8.1.1 參數(shù)求解 226
8.1.2 系數(shù)求解的幾何意義 227
8.1.3 嶺回歸模型的應(yīng)用 228
8.1.4 模型的預(yù)測 234
8.2 LASSO回歸模型的介紹 235
8.2.1 參數(shù)求解 236
8.2.2 系數(shù)求解的幾何意義 237
8.2.3 LASSO回歸模型的應(yīng)用 238
8.2.4 模型的預(yù)測 240
8.3 篇章總結(jié) 242
第9章 Logistic回歸模型的分類應(yīng)用 244
9.1 Logistic回歸模型的構(gòu)建 245
9.2 Logistic回歸模型的參數(shù)求解 247
9.2.1 極大似然估計(jì) 247
9.2.2 梯度下降 249
9.3 Logistic回歸模型的參數(shù)解釋 249
9.4 幾種常用的模型評估方法 250
9.4.1 混淆矩陣 250
9.4.2 ROC曲線 251
9.4.3 K-S曲線 253
9.5 Logistic回歸模型的應(yīng)用 256
9.5.1 建模 256
9.5.2 預(yù)測 259
9.5.3 模型評估 260
9.6 篇章總結(jié) 262
第10章 決策樹與隨機(jī)森林的應(yīng)用 264
10.1 節(jié)點(diǎn)字段的選擇 265
10.1.1 信息增益 266
10.1.2 信息增益率 268
10.1.3 基尼指數(shù) 270
10.2 決策樹的剪枝 272
10.2.1 誤差降低剪枝法 272
10.2.2 悲觀剪枝法 273
10.2.3 代價(jià)復(fù)雜度剪枝法 274
10.3 隨機(jī)森林 276
10.3.1 隨機(jī)森林的思想 277
10.3.2 隨機(jī)森林的函數(shù)說明 278
10.4 決策樹與隨機(jī)森林的應(yīng)用 279
10.4.1 分類問題的應(yīng)用 280
10.4.2 預(yù)測問題的應(yīng)用 287
10.5 篇章總結(jié) 290
第11章 KNN模型 292
11.1 KNN算法的思想 292
11.2 最佳k值的選擇 293
11.3 相似度的度量方法 294
11.3.1 歐氏距離 294
11.3.2 曼哈頓距離 295
11.3.3 余弦相似度 295
11.3.4 杰卡德相似系數(shù) 296
11.4 近鄰樣本的搜尋方法 297
11.4.1 KD樹搜尋法 297
11.4.2 球樹搜尋法 301
11.5 KNN模型的應(yīng)用 303
11.5.1 分類問題的判別 304
11.5.2 預(yù)測性問題的解決 309
11.6 篇章總結(jié) 312
第12章 樸素貝葉斯模型 314
12.1 樸素貝葉斯理論基礎(chǔ) 315
12.2 幾種貝葉斯模型 316
12.2.1 高斯貝葉斯分類器 316
12.2.2 高斯貝葉斯分類器的應(yīng)用 318
12.2.3 多項(xiàng)式貝葉斯分類器 322
12.2.4 多項(xiàng)式貝葉斯分類器的應(yīng)用 324
12.2.5 伯努利貝葉斯分類器 327
12.2.6 伯努利貝葉斯分類器的應(yīng)用 329
12.3 篇章總結(jié) 335
第13章 SVM模型 337
13.1 SVM的簡介 338
13.1.1 距離公式的介紹 339
13.1.2 SVM的實(shí)現(xiàn)思想 339
13.2 幾種常見的SVM模型 341
13.2.1 線性可分的SVM 341
13.2.2 一個(gè)手工計(jì)算的案例 344
13.2.3 近似線性可分SVM 346
13.2.4 線性SVM的損失函數(shù) 348
13.2.5 非線性可分SVM 349
12.2.6 幾種常用的SVM核函數(shù) 351
12.2.7 SVM的回歸預(yù)測 352
12.2.8 R語言函數(shù)介紹 353
13.3 分類性SVM模型的應(yīng)用—手寫字母的識別 355
13.4 預(yù)測性SVM回歸模型的應(yīng)用—受災(zāi)面積的預(yù)測 358
13.5 篇章總結(jié) 361
第14章 GBDT模型 363
14.1 提升樹算法 364
14.1.1 AdaBoost算法的損失函數(shù) 364
14.1.2 AdaBoost算法的操作步驟 366
14.1.3 AdaBoost算法的簡單例子 367
14.1.4 AdaBoost算法的應(yīng)用 369
14.2 GBDT算法的介紹 375
14.2.1 GBDT算法的操作步驟 375
14.2.2 GBDT分類算法 376
14.2.3 GBDT回歸算法 377
14.2.4 GBDT算法的應(yīng)用 378
14.3 非平衡數(shù)據(jù)的處理 382
14.4 XGBoost算法 384
14.4.1 XGBoost算法的損失函數(shù) 384
14.4.2 損失函數(shù)的演變 386
14.4.3 XGBoost算法的應(yīng)用 388
14.5 篇章總結(jié) 394
第15章 Kmeans聚類分析 396
15.1 Kmeans聚類 397
15.1.1 Kmeans的思想 397
15.1.2 Kmeans的原理 398
15.2 最佳k值的確定 399
15.2.1 拐點(diǎn)法 400
15.2.2 輪廓系數(shù)法 402
15.2.3 Gap Statistic 404
15.3 Kmeans聚類的應(yīng)用 407
15.3.1 鳶尾花類別的聚類 407
15.3.2 基于NBA球員歷史參賽數(shù)據(jù)的聚類 410
15.4 Kmeans聚類的注意事項(xiàng) 415
15.5 篇章總結(jié) 416