內容簡介
本書共分為14章,重點探討瞭數據預處理的方法,包括數據獲取、篩選、重構、建模、平滑以及降維,本書還介紹瞭分類和聚類等幾種主要的數據分析方法,zui後探討瞭網絡數據、時序數據、空間數據及社交媒體數據等一些特殊類型數據的分析處理。
目錄
譯者序
前言
第1章 你好,數據! 1
1.1 導入一個大小閤適的文本文件 2
1.2 文本文件編譯測試平颱 5
1.3 導入文本文件的子集 6
1.4 從數據庫中導入數據 8
1.4.1 搭建測試環境 9
1.4.2 MySQL和MariaDB 11
1.4.3 PostgreSQL 15
1.4.4 Oracle數據庫 17
1.4.5 訪問ODBC數據庫 22
1.4.6 使用圖形化用戶麵連接數據庫 23
1.4.7 其他數據庫後颱 24
1.5 從其他統計係統導入數據 25
1.6 導入Excel電子錶格 26
1.7 小結 26
第2章 從Web獲取數據 28
2.1 從Internet導入數據集 29
2.2 其他流行的在綫數據格式 32
2.3 從HTML錶中讀取數據 37
2.4 從其他在綫來源獲取數據 39
2.5 使用R包與數據源API交互 42
2.5.1 Socrata的開源數據API 43
2.5.2 金融API 44
2.5.3 使用Quandl獲取時序數據 45
2.5.4 Google文檔和統計數據 46
2.5.5 在綫搜索的發展趨勢 47
2.5.6 天氣曆史數據 48
2.5.7 其他在綫數據源 49
2.6 小結 49
第3章 數據篩選和匯總 50
3.1 去掉多餘的數據 50
3.1.1 快速去掉多餘數據 52
3.1.2 快速去掉多餘數據的其他方法 53
3.2 聚集 54
3.2.1 使用基礎的R命令實現快速聚集 55
3.2.2 方便的輔助函數 56
3.2.3 高性能的輔助函數 57
3.2.4 使用data.table完成聚集 59
3.3 測試 59
3.4 匯總函數 62
3.5 小結 64
第4章 數據重構 65
4.1 矩陣轉置 65
4.2 基於字符串匹配實現數據篩選 66
4.3 數據重排序 67
4.4 dplyr包和data.table包的比較 70
4.5 創建新變量 70
4.5.1 內存使用分析 71
4.5.2 同時創建多個變量 72
4.5.3 采用dplyr包生成新變量 73
4.6 數據集閤並 74
4.7 靈活地實現數據整形 76
4.7.1 將寬錶轉換為長錶 77
4.7.2 將長錶轉換為寬錶 78
4.7.3 性能調整 80
4.8 reshape包的演變 80
4.9 小結 81
第5章 建模 82
5.1 多元模型的由來 83
5.2 綫性迴歸及連續預測變量 83
5.2.1 模型解釋 83
5.2.2 多元預測 85
5.3 模型假定 87
5.4 迴歸綫的擬閤效果 90
5.5 離散預測變量 92
5.6 小結 95
第6章 綫性趨勢直綫外的知識 96
6.1 工作流建模 96
6.2 邏輯迴歸 97
6.2.1 數據思考 100
6.2.2 模型擬閤的好處 101
6.2.3 模型比較 102
6.3 計數模型 102
6.3.1 泊鬆迴歸 103
6.3.2 負二項迴歸 107
6.3.3 多元非綫性模型 107
6.4 小結 115
第7章 非結構化數據 116
7.1 導入語料庫 116
7.2 清洗語料庫 118
7.3 展示語料庫的高頻詞 121
7.4 深度清洗 121
7.4.1 詞乾提取 122
7.4.2 詞形還原 124
7.5 詞條關聯說明 124
7.6 其他一些度量 125
7.7 文檔分段 126
7.8 小結 128
第8章 數據平滑 129
8.1 缺失值的類型和來源 129
8.2 確定缺失值 130
8.3 忽略缺失值 131
8.4 去掉缺失值 134
8.5 在分析前或分析中篩選缺失值 136
8.6 填補缺失值 136
8.6.1 缺失值建模 138
8.6.2 不同填補方法的比較 140
8.6.3 不處理缺失值 141
8.6.4 多重填補 141
8.7 異常值和孤立點 141
8.8 使用模糊方法 144
8.9 小結 146
第9章 從大數據到小數據 147
9.1 充分性測試 148
9.1.1 正態性 148
9.1.2 多元變量正態性 149
9.1.3 變量間的依賴關係 152
9.1.4 KMO和Barlett檢驗 154
9.2 主成分分析 157
9.2.1 PCA算法 158
9.2.2 確定成分數 159
9.2.3 成分解釋 161
9.2.4 鏇轉方法 164
9.2.5 使用PCA檢測孤立點 167
9.3 因子分析 170
9.4 主成分分析和因子分析 172
9.5 多維尺度分析 173
9.6 小結 176
第10章 分類和聚類 177
10.1 聚類分析 178
10.1.1 層次聚類 178
10.1.2 確定簇的理想個數 181
10.1.3 k均值聚類 183
10.1.4 可視化聚類 185
10.2 潛類彆模型 186
10.2.1 潛類彆分析 187
10.2.2 LCR模型 189
10.3 判彆分析 189
10.4 邏輯迴歸 192
10.5 機器學習算法 194
10.5.1 k近鄰算法 195
10.5.2 分類樹 197
10.5.3 隨機森林 200
10.5.4 其他算法 201
10.6 小結 203
第11章 基於R的社會網絡分析 204
11.1 裝載網絡數據 204
11.2 網絡中心性度量 206
11.3 網絡數據的展現 207
11.3.1 交互網絡圖 210
11.3.2 繪製層次圖 211
11.3.3 使用R包來解釋包的依賴關係 212
11.4 更多網絡分析資源 212
11.5 小結 213
第12章 時序數據分析 214
12.1 創建時序對象 214
12.2 展現時序數據 215
12.3 季節性分解 217
12.4 Holt-Winters篩選 218
12.5 自迴歸積分滑動平均模型 220
12.6 孤立點檢測 221
12.7 更復雜的時序對象 224
12.8 高級時序數據分析 225
12.9 小結 225
第13章 我們身邊的數據 226
13.1 地理編碼 226
13.2 在空間中展示數據點 228
13.3 找齣數據點的多邊形重疊區域 230
13.4 繪製主題圖 232
13.5 圍繞數據點繪製多邊形 233
13.5.1 等高綫 234
13.5.2 馮洛諾伊圖 236
13.6 衛星圖 237
13.7 交互圖 238
13.7.1 查詢Google地圖 238
13.7.2 Java腳本地圖庫 240
13.8 其他繪圖方法 242
13.9 空間數據分析 244
13.10 小結 246
第14章 分析R社區 247
14.1 R創始團隊的成員 247
14.2 R開發包的維護人員 249
14.3 R-help郵件列錶 253
14.3.1 R-help郵件列錶的規模 256
14.3.2 預測未來的郵件規模 258
14.4 分析用戶列錶的重疊部分 260
14.5 社交媒體內的R用戶數 262
14.6 社交媒體中與R相關的貼子 263
14.7 小結 266
附錄 267
前言/序言
Preface 前 言 自20多年前發源於學術界以來,R語言已經成為統計分析的通用語言,活躍於眾多産業領域。目前,越來越多的商業項目開始使用R,兼之R用戶開發瞭數以韆計易於上手的開發包,都使得R成為數據分析工程師及科學傢最常用的工具。 本書將幫助讀者熟悉R語言這一開源生態係統,並介紹一些基本的統計背景知識,以及一小部分相關的數學知識。我們將著重探討使用R語言解決實際的問題。 由於數據科學傢在數據的采集、清洗及重構上將耗費大量時間,因此本書首先將通過第一手實例來重點探討從文件、數據庫以及在綫資源中導入數據的方法,然後再介紹數據的重構和清洗——不包含實際的數據分析,最後幾章將對一些特殊的數據類型以及經典的統計模型和部分機器學習算法進行說明。 本書主要內容第1章從與所有數據相關項目都有關的關鍵性的第一步——從文本文件和數據庫中導入數據開始。重點探討使用優化的CSV分析器把數據載入R,預篩選數據,並對不同數據庫後颱對R的支持能力進行比較。 第2章介紹如何使用麵嚮Web服務和API通信的包實現數據的導入,包括如何從主頁上整理和抽取數據。還將對處理XML和JSON格式數據進行概括性說明。 第3章繼續介紹基礎的數據處理知識,包括多種數據篩選和聚集,並對data.table和dplyr這兩個常見開發包在性能和使用語法方麵進行比較。 第4章介紹更多有關復雜數據類型的轉換方法,相關函數包括處理數據子集、數據閤並、長寬錶數據格式到適閤用戶需要的工作流源數據格式之間的轉換等。 第5章開始介紹真實的統計模型,包括迴歸的概念、常用迴歸模型等。這一章篇幅不長,還介紹瞭模型測試的方法以及基於真實數據集如何解釋某個多元綫性迴歸模型結果。 第6章在前述章節的基礎上,探討瞭預測變量的非綫性關聯,以及諸如邏輯迴歸和泊鬆迴歸等廣義綫性模型的樣例。 第7章介紹一些新的非結構化數據類型,讀者將通過實踐文本挖掘算法及對結果的可視化處理,瞭解使用統計模型來處理類似這樣一些非結構化數據的方法。 第8章探討有關原始數據集的另一個常見問題。大多數時候,數據科學傢需要處理髒數據,包括去掉錯誤數據、孤立點以及其他不正確的值,同時又要將缺失值帶來的影響降到最低。 第9章介紹如何從大數據中進行特徵提取,假設我們已經裝載瞭一個乾淨的數據集,並且完成瞭格式轉換,當我們開始處理高維變量時,需要采用一些統計方法來進行降維以及其他包括主成分分析、因子分析和多維尺度分析等方法完成連續變量的轉換。 第10章討論使用監督及非監督統計和機器學習方法來處理樣本分組問題。這些方法包括層次聚類、k均值聚類、潛類彆模型、判彆分析、邏輯迴歸和k近鄰算法,以及分類樹和迴歸樹。 第11章重點探討一類特殊的數據結構,包括其基本概念以及可視化網絡分析技術,igraph包是該章的重點。 第12章展示如何通過平滑、季節性分解以及ARIMA等方法處理分析時間-日期數據及其相關值,同時還將討論有關預測和孤立點檢測等技術。 第13章探討一類重要的數據維度——空間維,重點會放在通過主題圖、交互圖、等高綫和馮洛諾伊圖完成空間數據的可視化。 第14章提供瞭一個更完整的樣例,該樣例中包含瞭很多前述章節中提到的方法來幫助讀者復習這本書所學習到的主要內容,以及應對未來工作中可能遇到的問題和睏難。 附錄給齣瞭R語言的幫助索引,以及對前述章節中涉及內容的補充閱讀。 閱讀準備本書所展示的代碼都應該在R控製颱內運行,讀者需要事先安裝好R,可以從http://r-project.org下載免費軟件以及為所有主流操作係統準備的安裝指南。 本書並不會探討其他更深入的內容,例如在集成開發環境(Integrated Development Environment IDE)下使用R的方法,盡管IDE為諸如Emacs、Eclipse、vi、NotePad++都提供瞭非常棒的插件和擴展。當然,我們還是建議讀者能夠使用RStudio,這是一個為R開發的開源免費IDE,訪問地址為https://www.rstudio.com/products/RStudio。 除瞭基礎的R包,我們還會使用到部分用戶自己提供的R包,它們大多都可以很容易地從R綜閤典藏網(Comprehensive R Archive Network,CRAN)處下載安裝。附錄中列齣瞭本書用到的開發包以及多個版本。 如果要從CRAN安裝包,讀者要確保網絡通暢。假如要下載二進製文件,可以在R控製颱調用install.packages命令: 本書中所提到的部分包在CRAN上下載不瞭,但也許可以從Bitbucket或者GitHub處找到安裝文件,然後再通過調用devtools包的install_bitbucket和install_github函數完成安裝。Windows用戶則需首先從https://cran.r-project.org/bin/windows/Rtools處安裝rtools包。 安裝完畢後,我們應該在使用包之前先將其裝載到R會話中,附錄中列齣瞭所有包的目錄,而每一章的一開始則對相關的源碼和R命令做瞭介紹: 我們極力建議讀者下載安裝本書的樣例源碼(可以參考前言的“樣例源碼下載”小節),這樣讀者就可以在R控製颱很容易地復製和粘貼相關命令,而不需要再按照書中文字輸入代碼。 如果讀者之前沒用過R語言,最好能夠先從R主頁上閱讀一些免費的介紹性文章和幫助手冊,本書附錄中也列齣瞭一些推薦閱讀材料。 讀者人群如果你是數據科學傢或者是R開發人員,希望更多地瞭解有關R的高級功能及工具,那麼這本書就是為你而寫。本書希望讀者已經具備基礎的R語言知識,瞭解數據庫的邏輯。如果你是數據科學傢、工程師或分析師,希望提高自己對R語言的開發能力,那麼這本書也適閤你。盡管需要掌握一些基本的R知識,本書還是為你提供瞭相關參考文檔,能夠幫助你快速進入角色並掌握相關技術。 本書約定本書中任何將在R控製颱輸入或輸齣的命令行將采用如下格式: 符號“>”有提示的意思,指此處R控製颱正在等待要輸入執行的命令。如果命令長度超過一行,則第一行還是用“>”開頭,但剩下的其餘行都要在行首添加符號“+”,代錶該行不是一個完整的命令(例如,缺圓括號或引號)。命令的輸齣不需要增加任何首字母,字體采用和輸入文本相同的等寬字體。 新齣現的術語和重要的文字將用粗體錶示。 警告或重要提示將跟在這樣的符號後麵。 小竅門或訣竅將跟在這樣的符號後麵。 樣例源碼下載你可以從http://www.packtpub.com通過個人賬號下載你所購買書籍的樣例源碼。如果你是從其他途徑購買的,可以訪問http://www.packtpub.com/support,完成賬號注冊,就可以直接通過郵件方式獲得相關文件。 你也可以訪問華章圖書官網:http://www.hzbook.com,通過注冊並登錄個人賬號,下載本書的源代碼。 下載書中彩圖我們還為讀者準備瞭一個PDF文件,該文件包含瞭本書所有截圖和樣圖,可以更好地幫助讀者理解輸齣的變化。你可以從以下地址下載: http://www.packtpub.com/sites/default/files/downloads/1234OT_ColorImages.pdf The Translator’s Words?譯 者 序R語言在數據分析與機器學習領域已經成為一款重要的工具,根據Tiobe、PyPL以及Redmonk等編程語言的人氣排名結果顯示,它所受到的關注程度正在快速提升,並成為統計領域最具人氣的語言選項。瞭解並掌握R語言的編程開發,也就意味著我們能夠更高效地分析和處理數據。 位於英國伯明翰的Packt公司是世界上發展最快、産品最豐富的技術書籍齣版商之一,本書是Packt公司近年推齣的又一本技術力作,全書一共分為14章,重點探討瞭數據預處理的方法,包括數據獲取、篩選、重構、建模、平滑以及降維,本書還介紹瞭分類和聚類等幾種主要的數據分析方法,以及網絡數據、時序數據、空間數據及社交媒體數據等一些特殊類型數據的分析處理。本書以數據科學傢、R開發人員和具備基礎R語言知識的工程師為目標讀者,通過閱讀本書,讀者能夠更多地瞭解有關R的高級功能及工具,同時提高R語言的開發能力。為瞭照顧初學者,盡管作者沒有過多地介紹R語言的基本知識,但依然很貼心地提供瞭相關的參考資料,以幫助讀者快速進入角色並掌握相關技術。 本書作者蓋爾蓋伊?道羅齊(Gergely Daróczi)是一位狂熱的R用戶及開發人員,也是rapporter.net網站的創始人及CTO,現就職於洛杉磯的www.card.com網站,擔任首席R語言開發及研究的數據專傢。受作者自身的研究背景影響,本書花瞭相當多的篇幅分析在數據預處理環節開發人員可能遇到的各類問題,並給齣瞭多種經過實踐證明的解決方案。書中所有源代碼和實驗數據在華章網站(www.hzbook.com)上都可以免費下載,相信閱讀完本書並親自動手實踐完成所有案例方法後,讀者將對在數據科學領域應用R語言有更深入的瞭解,也將對數據處理及分析有更多的領悟及體會。 本書能夠得以齣版,要感謝機械工業齣版社的繆傑和何欣陽編輯,他們在翻譯過程中給予瞭我很多建設性的指導意見。其次,還要感謝吳怡編輯,是她讓我與機械工業齣版社結緣。 由於教學科研需要,譯者很早就已經接觸瞭R語言,之前翻譯《機器學習與R語言實戰》一書,也讓我獲益匪淺,但由於學科發展速度日新月異,在翻譯過程中我仍然遇到瞭一些問題,盡管在此期間我查閱瞭大量的文獻及網絡資源,並逐字逐句地對譯稿進行瞭反復推敲和琢磨,但還是不可避免地存在錯誤和疏漏之處,還望各位讀者不吝指正。 潘怡2016年8月
R語言數據分析 下載 mobi epub pdf txt 電子書 格式