發表於2024-12-19
本書首先介紹如何設置基本的數據科學工具箱,然後帶你進入數據改寫和預處理階段,這一部分主要是闡明所有與核心數據科學活動相關的數據分析過程,如數據加載、轉換、修復以及數據探索和處理等。通過主要的機器學習算法、圖形分析技術,以及所有易於錶現結果的可視化工具,實現對數據科學的概述。
本書對上一版內容進行瞭全麵拓展和更新,涵蓋新版的Jupyter Notebook、NumPy、pandas和Scikit-learn等的新改進。此外,還介紹瞭深度學習(藉助在Theano和Tensorflow平颱上運行的Keras庫)、漂亮的可視化(使用Seaborn和 ggplot)和Web部署(使用bottle)等新內容。
本書行文過程以數據科學項目為主體,輔以整潔的代碼和簡化的示例,能幫助你理解與項目相關的潛在原理和實際數據集。
本書由兩位資深的數據科學傢所著,是他們多年數據科學實踐經驗的總結,通過對上一版內容的更新和擴展,其介紹瞭新版Python的特點及安裝方法,繼而全麵又係統地講解瞭數據科學分析和開發的相關工具、實踐以及簡單示例。通過閱讀本書,你將深入瞭解Python核心概念,成為高效數據科學實踐者。
本書共七部分內容,包括六章和一個附錄。第1章介紹Jupyter Notebook的使用方法;第2章對數據科學流程進行概述,並詳細分析用於數據準備和處理的關鍵工具;第3章討論改進結果的數據操作技術;第4章深入研究Scikit-learn中的主要機器學習算法;第5章進行圖的探索和聚集分析;第6章介紹一些可視化工具的使用方法;附錄則是一些Python示例和說明,重點介紹Python語言的特點。
阿爾貝托·博斯凱蒂(Alberto Boschetti) 數據科學傢、信號處理和統計學方麵的專傢。他擁有通信工程專業博士學位,現在倫敦居住和工作。基於所從事的項目,他每天都要麵對包括自然語言處理、機器學習和概率圖模型等方麵的挑戰。他對工作充滿激情,經常參加學術聚會、研討會等學術活動,緊跟數據科學技術發展的前沿。
盧卡·馬薩羅(Luca Massaron) 數據科學傢、市場研究總監,是多元統計分析、機器學習和客戶洞察方麵的專傢,有十年以上解決實際問題的經驗,使用推理、統計、數據挖掘和算法為利益相關者創造瞭巨大的價值。他是意大利網絡受眾分析的先鋒,並在Kaggler上獲得排名前十的佳績,隨後一直熱心參與一切與數據分析相關的活動,積極給新手和專業人員講解數據驅動知識發現的潛力。他崇尚大道至簡,堅信理解數據科學的本質能帶來巨大收獲。
目 錄
譯者序
前言
作者簡介
第1章 新手上路 1
1.1 數據科學與Python簡介 1
1.2 Python的安裝 2
1.2.1 Python 2還是Python 3 3
1.2.2 分步安裝 3
1.2.3 工具包的安裝 4
1.2.4 工具包升級 6
1.2.5 科學計算發行版 6
1.2.6 虛擬環境 8
1.2.7 核心工具包一瞥 11
1.3 Jupyter簡介 17
1.3.1 快速安裝與初次使用 19
1.3.2 Jupyter魔術命令 20
1.3.3 Jupyter Notebook怎樣幫助數據科學傢 22
1.3.4 Jupyter的替代版本 26
1.4 本書使用的數據集和代碼 27
1.5 小結 33
第2章 數據改寫 34
2.1 數據科學過程 34
2.2 使用pandas進行數據加載與預處理 36
2.2.1 數據快捷加載 36
2.2.2 處理問題數據 38
2.2.3 處理大數據集 41
2.2.4 訪問其他的數據格式 43
2.2.5 數據預處理 44
2.2.6 數據選擇 47
2.3 使用分類數據和文本數據 49
2.3.1 特殊的數據類型——文本 51
2.3.2 使用Beautiful Soup抓取網頁 56
2.4 使用NumPy進行數據處理 57
2.4.1 NmuPy中的N維數組 57
2.4.2 NmuPy ndarray對象基礎 58
2.5 創建NumPy數組 59
2.5.1 從列錶到一維數組 60
2.5.2 控製內存大小 60
2.5.3 異構列錶 61
2.5.4 從列錶到多維數組 62
2.5.5 改變數組大小 63
2.5.6 利用NumPy函數生成數組 64
2.5.7 直接從文件中獲得數組 65
2.5.8 從pandas提取數據 65
2.6 NumPy快速操作和計算 66
2.6.1 矩陣運算 68
2.6.2 NumPy數組切片和索引 69
2.6.3 NumPy數組堆疊 71
2.7 小結 72
第3章 數據科學流程 73
3.1 EDA簡介 73
3.2 創建新特徵 77
3.3 維數約簡 78
3.3.1 協方差矩陣 79
3.3.2 主成分分析 80
3.3.3 一種用於大數據的PCA變型——RandomizedPCA 82
3.3.4 潛在因素分析 83
3.3.5 綫性判彆分析 84
3.3.6 潛在語義分析 85
3.3.7 獨立成分分析 85
3.3.8 核主成分分析 85
3.3.9 t-分布鄰域嵌入算法 87
3.3.10 受限玻爾茲曼機 87
3.4 異常檢測和處理 89
3.4.1 單變量異常檢測 89
3.4.2 EllipticEnvelope 90
3.4.3 OneClassSVM 94
3.5 驗證指標 96
3.5.1 多標號分類 97
3.5.2 二值分類 99
3.5.3 迴歸 100
3.6 測試和驗證 100
3.7 交叉驗證 103
3.7.1 使用交叉驗證迭代器 105
3.7.2 采樣和自舉方法 107
3.8 超參數優化 108
3.8.1 建立自定義評分函數 110
3.8.2 減少網格搜索時間 112
3.9 特徵選擇 113
3.9.1 基於方差的特徵選擇 113
3.9.2 單變量選擇 114
3.9.3 遞歸消除 115
3.9.4 穩定性選擇與基於L1的選擇 116
3.10 將所有操作包裝成工作流程 118
3.10.1 特徵組閤和轉換鏈接 118
3.10.2 構建自定義轉換函數 120
3.11 小結 121
第4章 機器學習 122
4.1 準備工具和數據集 122
4.2 綫性和logistic迴歸 124
4.3 樸素貝葉斯 126
4.4 K近鄰 127
4.5 非綫性算法 129
4.5.1 基於SVM的分類算法 129
4.5.2 基於SVM的迴歸算法 131
4.5.3 調整SVM(優化) 132
4.6 組閤策略 133
4.6.1 基於隨機樣本的粘閤策略 134
4.6.2 基於弱分類器的bagging策略 134
4.6.3 隨機子空間和隨機分片 135
4.6.4 隨機森林和Extra-Trees 135
4.6.5 從組閤估計概率 137
4.6.6 模型序列——AdaBoost 138
4.6.7 梯度樹提升 139
4.6.8 XGBoost 140
4.7 處理大數據 142
4.7.1 作為範例創建一些大數據集 142
4.7.2 對容量的可擴展性 143
4.7.3 保持速度 144
4.7.4 處理多樣性 145
4.7.5 隨機梯度下降概述 147
4.8 深度學習 148
4.9 自然語言處理一瞥 153
4.9.1 詞語分詞 153
4.9.2 詞乾提取 154
4.9.3 詞性標注 154
4.9.4 命名實體識彆 155
4.9.5 停止詞 156
4.9.6 一個完整的數據科學例子——文本分類 156
4.10 無監督學習概覽 158
4.11 小結 165
第5章 社交網絡分析 166
5.1 圖論簡介 166
5.2 圖的算法 171
5.3 圖的加載、輸齣和采樣 177
5.4 小結 179
第6章 可視化、發現和結果 180
6.1 matplotlib基礎介紹 180
6.1.1 麯綫繪圖 181
6.1.2 繪製分塊圖 182
6.1.3 數據中的關係散點圖 183
6.1.4 直方圖 184
6.1.5 柱狀圖 185
6.1.6 圖像可視化 186
6.1.7 pandas的幾個圖形示例 188
6.1.8 散點圖 190
6.1.9 平行坐標 192
6.2 封裝matplotlib命令 193
6.2.1 Seaborn簡介 194
6.2.2 增強EDA性能 197
6.3 交互式可視化工具Bokeh 201
6.4 高級數據學習錶示 203
6.4.1 學習麯綫 204
6.4.2 確認麯綫 205
6.4.3 隨機森林的特徵重要性 206
6.4.4 GBT部分依賴關係圖形 207
6.4.5 創建MA-AAS預測服務器 208
6.5 小結 212
附錄A 增強Python基礎 213
前 言
“韆裏之行,始於足下。”——老子(公元前604—531)數據科學屬於一門相對較新的知識領域,它成功融閤瞭綫性代數、統計建模、可視化、計算語言學、圖形分析、機器學習、商業智能、數據存儲和檢索等眾多學科。
Python編程語言在過去十年已經徵服瞭科學界,現在是數據科學實踐者不可或缺的工具,也是每一個有抱負的數據科學傢的必備工具。Python為數據分析、機器學習和算法求解提供瞭快速、可靠、跨平颱、成熟的開發環境。無論之前在數據科學應用中阻止你掌握Python的原因是什麼,我們將通過簡單的分步化解和示例導嚮的方法幫你解決,幫助你在演示數據集和實際數據集上使用最直接有效的Python工具。
作為第2版,本書對第1版內容進行瞭更新和擴展。以最新的Jupyter Notebook(包括可互換內核,一個真正支持多種編程語言的數據科學係統)為基礎,本書包含瞭NumPy、pandas和Scikit-learn等庫的所有主要更新。此外,本書還提供瞭不少新內容,包括深度學習(基於Theano和Tensorflow的Keras)、漂亮的數據可視化(Seaborn和ggplot)和Web部署(使用bottle)等。本書首先使用單源方法,展示如何在最新版Python(3.5)中安裝基本的數據科學工具箱,這意味著本書中的代碼可以在Python 2.7上重用。接著,將引導你進入完整的數據改寫和預處理階段,主要闡述用於數據分析、探索或處理的數據加載、變換、修復等關鍵數據科學活動。最後,本書將完成數據科學精要的概述,介紹主要的機器學習算法、圖分析技術和可視化方法,其中,可視化工具將更易於嚮數據科學專傢或商業用戶展示數據處理結果。
本書內容第1章介紹Jupyter Notebook,演示怎樣使用程序手冊中的數據。
第2章對數據科學流程進行概述,詳細分析進行數據準備和處理所使用的關鍵工具,這些工具將在采用機器學習算法和建立假設實驗計劃之前使用。
第3章討論所有可能有助於結果改進甚至提升的數據操作技術。
第4章深入研究Scikit-learn包中的主要機器學習算法,例如綫性模型、支持嚮量機、樹集成和無監督聚類技術等。
第5章介紹圖的概念,它可以錶示為偏離預測或目標的有趣矩陣。這是目前數據科學界的研究熱點,期待利用圖的技術來研究復雜的社交網絡。
第6章介紹使用matplotlib進行可視化的基本方法,以及如何使用pandas進行探索性數據分析(EDA),如何使用Seaborn和Bokeh實現漂亮的可視化,還包括如何建立提供所需要信息的Web服務器。
附錄包括一些Python示例和說明,重點介紹Python語言的主要特點,這些都是從事數據科學工作必須瞭解的。
閱讀準備本書用到的Python及其他數據科學工具(從IPython到Scikit-learn)都能在網上免費下載。要運行本書附帶的源代碼,需要一颱裝有Windows、Linux或Mac OS等操作係統的計算機。本書將分步介紹Python解釋器的安裝過程,以及運行示例所需要的工具和數據。
讀者對象如果你有誌於成為數據科學傢,並擁有一些數據分析和Python方麵的基礎知識,本書將助你在數據科學領域快速入門。對於有R語言或Matlab編程經驗的數據分析人員,本書也可以作為一個全麵的參考書,提高他們在數據操作和機器學習方麵的技能。
代碼下載你可以從http://www.packtpub.com通過個人賬號下載你所購買書籍的樣例源碼。你也可以訪問華章圖書官網http://www.hzbook.com,通過注冊並登錄個人賬號下載本書的源代碼。
彩圖下載我們還提供瞭一個PDF文件,其中包含本書中使用的截圖和彩圖,可以幫助讀者更好地瞭解輸齣的變化。文件可以從以下地址下載:http://www.packtpub.com/sites/default/files/downloads/PythonDataScienceEssentialsSecondEdition_colorImages.pdf。
數據科學導論:Python語言實現(原書第2版) 下載 mobi pdf epub txt 電子書 格式 2024
數據科學導論:Python語言實現(原書第2版) 下載 mobi epub pdf 電子書數據科學導論:Python語言實現(原書第2版) mobi epub pdf txt 電子書 格式下載 2024