![](/c3/25740989105.jpg)
出版社:人民郵電出版社 ISBN:9787115475893 商品編碼:25740989105 品牌:文軒 出版時間:2018-02-01 代碼:109 作者:傑克·萬托布拉斯(JakeVanderPla
"![](http://img14.360buyimg.com/cms/jfs/t1/203358/9/26405/134589/62f4a34cEcdefae53/84e082ed3b03dbc0.jpg) 作 者:(美)傑克·萬托布拉斯(Jake VanderPlas) 著;陶俊傑,陳小莉 譯 著 定 價:109 出 版 社:人民郵電出版社 出版日期:2018年02月01日 頁 數:448 裝 幀:平裝 ISBN:9787115475893 Python語言擁有大量可用於存儲、操作和洞察數據的程序庫,已然成為深受數據科學研究人員推崇的工具。本書以IPython、NumPy、Pandas、Matplotlib和Scikit-Learn這5個能完成數據科學大部分工作的基礎工具為主,從實戰角度出發,講授如何清洗和可視化數據、如何用數據建立各種統計學或機器學習模型等常見數據科學任務,旨在讓各領域與數據處理相關的工作人員具備發現問題、解決問題的能力。·IPython和Jupyter:為使用Python提供計算環境·NumPy:用ndarray等 ●譯者序xiii 前言xv 第1章IPython:超越Python1 1.1shell還是Notebook1 1.1.1啟動IPythonshell2 1.1.2啟動JupyterNotebook2 1.2IPython的幫助和文檔3 1.2.1用符號獲取文檔3 1.2.2通過符號獲取源代碼4 1.2.3用Tab補全的方式探索模塊5 1.3IPythonshell中的快捷鍵7 1.3.1導航快捷鍵7 1.3.2文本輸入快捷鍵7 1.3.3命令歷史快捷鍵8 1.3.4其他快捷鍵9 1.4IPython魔法命令9 1.4.1粘貼代碼塊:%paste和%cpaste9 1.4.2執行外部代碼:%run10 1.4.3計算代碼運行時間:%timeit11 1.4.4魔法函數的幫助:、%magic和%lsmagic11 1.5輸入和輸出歷史12 1.5.1IPython的輸入和輸出對像12 1.5.2下劃線快捷鍵和以前的輸出13 1.5.3禁止輸出13 1.5.4相關的魔法命令13 1.6IPython和shell命令14 1.6.1shell快速入門14 1.6.2IPython中的shell命令15 1.6.3在shell中傳入或傳出值15 1.7與shell相關的魔法命令16 1.8錯誤和調試17 1.8.1控制異常:%xmode17 1.8.2調試:當閱讀軌跡追溯不足以解決問題時19 1.9代碼的分析和計時21 1.9.1代碼段計時:%timeit和%time22 1.9.2分析整個腳本:%prun23 1.9.3用%lprun進行逐行分析24 1.9.4用%memit和%mprun進行內存分析25 1.10IPython參考資料26 1.10.1網絡資源26 1.10.2相關圖書27 第2章NumPy入門28 2.1理解Python中的數據類型29 2.1.1Python整型不僅僅是一個整型30 2.1.2Python列表不僅僅是一個列表31 2.1.3Python中的固定類型數組32 2.1.4從Python列表創建數組32 2.1.5從頭創建數組33 2.1.6NumPy標準數據類型34 2.2NumPy數組基礎35 2.2.1NumPy數組的屬性36 2.2.2數組索引:獲素37 2.2.3數組切片:獲取子數組38 2.2.4數組的變形41 2.2.5數組拼接和分裂42 2.3NumPy數組的計算:通用函數44 2.3.1緩慢的循環44 2.3.2通用函數介紹45 2.3.3探索NumPy的通用函數46 2.3.4通用函數特性49 2.3.5通用函數:更多的信息51 2.4聚合:*小值、*大值和其他值51 2.4.1數組值求和51 2.4.2*小值和*大值52 2.4.3示例:美國總統的身高是多少54 2.5數組的計算:廣播55 2.5.1廣播的介紹55 2.5.2廣播的規則57 2.5.3廣播的實際應用60 2.6比較、掩碼和布爾邏輯61 2.6.1示例:統計下雨天數61 2.6.2和通用函數類似的比較操作62 2.6.3操作布爾數組64 2.6.4將布爾數組作為掩碼66 2.7花哨的索引69 2.7.1探索花哨的索引69 2.7.2組合索引70 2.7.3示例:選擇隨機點71 2.7.4用花哨的索引修改值72 2.7.5示例:數據區間劃分73 2.8數組的排序75 2.8.1NumPy中的快速排序:np.sort和np.argsort76 2.8.2部分排序:分隔77 2.8.3示例:K個*近鄰78 2.9結構化數據:NumPy的結構化數組81 2.9.1生成結構化數組83 2.9.2更高級的復合類型84 2.9.3記錄數組:結構化數組的扭轉84 2.9.4關於Pandas85 第3章Pandas數據處理86 3.1安裝並使用Pandas86 3.2Pandas對像簡介87 3.2.1Pandas的Series對像87 3.2.2Pandas的DataFrame對像90 3.2.3Pandas的Index對像93 3.3數據取值與選擇95 3.3.1Series數據選擇方法95 3.3.2DataFrame數據選擇方法98 3.4Pandas數值運算方法102 3.4.1通用函數:保留索引102 3.4.2通用函數:索引對齊103 3.4.3通用函數:DataFrame與Series的運算105 3.5處理缺失值106 3.5.1選擇處理缺失值的方法106 3.5.2Pandas的缺失值107 3.5.3處理缺失值110 3.6層級索引113 3.6.1多級索引Series113 3.6.2多級索引的創建方法116 3.6.3多級索引的取值與切片119 3.6.4多級索引行列轉換121 3.6.5多級索引的數據累計方法124 3.7合並數據集:Concat與Append操作125 3.7.1知識回顧:NumPy數組的合並126 3.7.2通過pd.concat實現簡易合並126 3.8合並數據集:合並與連接129 3.8.1關繫代數129 3.8.2數據連接的類型130 3.8.3設置數據合並的鍵132 3.8.4設置數據連接的集合操作規則134 3.8.5重復列名:suffixes參數135 3.8.6案例:美國各州的統計數據136 3.9累計與分組140 3.9.1行星數據140 3.9.2Pandas的簡單累計功能141 3.9.3GroupBy:分割、應用和組合142 3.10數據透視表150 3.10.1演示數據透視表150 3.10.2手工制作數據透視表151 3.10.3數據透視表語法151 3.10.4案例:美國人的生日153 3.11向量化字符串操作157 3.11.1Pandas字符串操作簡介157 3.11.2Pandas字符串方法列表159 3.11.3案例:食譜數據庫163 3.12處理時間序列166 3.12.1Python的日期與時間工具166 3.12.2Pandas時間序列:用時間作索引169 3.12.3Pandas時間序列數據結構170 3.12.4時間頻率與偏移量172 3.12.5重新取樣、遷移和窗口173 3.12.6更多學習資料178 3.12.7案例:美國西雅圖自行車統計數據的可視化179 3.13高性能Pandas:eval()與query()184 3.13.1query()與eval()的設計動機:復合代數式184 3.13.2用pandas.eval()實現高性能運算185 3.13.3用DataFrame.eval()實現列間運算187 3.13.4DataFrame.query()方法188 3.13.5性能決定使用時機189 3.14參考資料189 第4章Matplotlib數據可視化191 4.1Matplotlib常用技巧192 4.1.1導入Matplotlib192 4.1.2設置繪圖樣式192 4.1.3用不用show()?如何顯示圖形192 4.1.4將圖形保存為文件194 4.2兩種畫圖接口195 4.2.1MATLAB風格接口195 4.2.2面向對像接口196 4.3簡易線形圖197 4.3.1調整圖形:線條的顏色與風格199 4.3.2調整圖形:坐標軸上下限200 4.3.3設置圖形標簽203 4.4簡易散點圖204 4.4.1用plt.plot畫散點圖205 4.4.2用plt.scatter畫散點圖206 4.4.3plot與scatter:效率對比208 4.5可視化異常處理208 4.5.1基本誤差線209 4.5.2連續誤差210 4.6密度圖與等高線圖211 4.7頻次直方圖、數據區間劃分和分布密度215 4.8配置圖例219 4.8.1選擇圖例素221 4.8.2在圖例中顯示不同尺寸的點222 4.8.3同時顯示多個圖例223 4.9配置顏色條224 4.9.1配置顏色條224 4.9.2案例:手寫數字228 4.10多子圖230 4.10.1plt.axes:手動創建子圖230 4.10.2plt.subplot:簡易網格子圖231 4.10.3plt.subplots:用一行代碼創建網格233 4.10.4plt.GridSpec:實現更復雜的排列方式234 4.11文字與注釋235 4.11.1案例:節假日對美國出生率的影響236 4.11.2坐標變換與文字位置237 4.11.3箭頭與注釋239 4.12自定義坐標軸刻度241 4.12.1主要刻度與次要刻度242 4.12.2隱藏刻度與標簽243 4.12.3增減刻度數量244 4.12.4花哨的刻度格式245 4.12.5格式生成器與定位器小結247 4.13Matplotlib自定義:配置文件與樣式表248 4.13.1手動配置圖形248 4.13.2修改默認配置:rcParams249 4.13.3樣式表251 4.14用Matplotlib畫三維圖255 4.14.1三維數據點與線256 4.14.2三維等高線圖256 4.14.3線框圖和曲面圖258 4.14.4曲面三角剖分259 4.15用Basemap可視化地理數據261 4.15.1地圖投影263 4.15.2畫一個地圖背景267 4.15.3在地圖上畫數據269 4.15.4案例:美國加州城市數據270 4.15.5案例:地表溫度數據271 4.16用Seaborn做數據可視化273 4.16.1Seaborn與Matplotlib274 4.16.2Seaborn圖形介紹275 4.16.3案例:探索馬拉松比賽成績數據283 4.17參考資料290 4.17.1Matplotlib資源290 4.17.2其他Python畫圖程序庫290 第5章機器學習291 5.1什麼是機器學習291 5.1.1機器學習的分類292 5.1.2機器學習應用的定性示例292 5.1.3小結299 5.2Scikit-Learn簡介300 5.2.1Scikit-Learn的數據表示300 5.2.2Scikit-Learn的評估器API302 5.2.3應用:手寫數字探索309 5.2.4小結313 5.3超參數與模型驗證313 5.3.1什麼是模型驗證314 5.3.2選擇模型317 5.3.3學習曲線322 5.3.4驗證實踐:網格搜索326 5.3.5小結327 5.4特征工程327 5.4.1分類特征327 5.4.2文本特征329 5.4.3圖像特征330 5.4.4衍生特征330 5.4.5缺失值填充332 5.4.6特征管道332 5.5專題:樸素貝葉斯分類333 5.5.1貝葉斯分類333 5.5.2高斯樸素貝葉斯334 5.5.3多項式樸素貝葉斯336 5.5.4樸素貝葉斯的應用場景339 5.6專題:線性回歸340 5.6.1簡單線性回歸340 5.6.2基函數回歸342 5.6.3正則化346 5.6.4案例:預測自行車流量349 5.7專題:支持向量機353 5.7.1支持向量機的由來354 5.7.2支持向量機:邊界*大化355 5.7.3案例:人臉識別363 5.7.4支持向量機總結366 5.8專題:決策樹與隨機森林367 5.8.1隨機森林的誘因:決策樹367 5.8.2評估器集成算法:隨機森林371 5.8.3隨機森林回歸373 5.8.4案例:用隨機森林識別手寫數字374 5.8.5隨機森林總結376 5.9專題:主成分分析376 5.9.1主成分分析簡介377 5.9.2用PCA作噪音過濾383 5.9.3案例:特征臉385 5.9.4主成分分析總結387 5.10專題:流形學習388 5.10.1流形學習:“HELLO”388 5.10.2多維標度法(MDS)389 5.10.3將MDS用於流形學習391 5.10.4非線性嵌入:當MDS失敗時393 5.10.5非線性流形:局部線性嵌入395 5.10.6關於流形方法的一些思考396 5.10.7示例:用Isomap處理人臉數據397 5.10.8示例:手寫數字的可視化結構400 5.11專題:k-means聚類402 5.11.1k-means簡介403 5.11.2k-means算法:期望*大化404 5.11.3案例409 5.12專題:高斯混合模型415 5.12.1高斯混合模型(GMM)為什麼會出現:k-means算法 的缺陷415 5.12.2一般化E-M:高斯混合模型417 5.12.3將GMM用作密度估計421 5.12.4示例:用GMM生 的數據425 5.13專題:核密度估計427 5.13.1KDE的由來:直方圖428 5.13.2核密度估計的實際應用431 5.13.3示例:球形空間的KDE433 5.13.4示例:不是很樸素的貝葉斯436 5.14應用:人臉識別管道439 5.14.1HOG特征440 5.14.2HOG實戰:簡單人臉識別器441 5.14.3注意事項與改進方案445 5.15機器學習參考資料446 5.15.1Python中的機器學習446 5.15.2通用機器學習資源447 關於作者448 關於封面448 《Python數據科學手冊》是對以數據深度需求為中心的科學、研究以及針對計算和統計方法的參考書。本書共五章,每章介紹一到兩個Python數據科學中的重點工具包。首先從IPython和Jupyter開始,它們提供了數據科學家需要的計算環境;第 2章講解能提供ndarray對像的NumPy,它可以用Python高效地存儲和操作大型數組;第3章主要涉及提供DataFrame對像的Pandas,它可以用Python高效地存儲和操作帶標簽的 列式數據;第4章的主角是Matplotlib,它為Python提供了許多數據可視化功能;第5章以Scikit-Learn為主,這個程序庫為重要的機器學習算法提供了高效整潔的Python版實現。《Python數據科學手冊》適合有編程背景,並打算將開源Python工具用作分析、操作、可視化以及學習數據的數據科學研究人員。 (美)傑克·萬托布拉斯(Jake VanderPlas) 著;陶俊傑,陳小莉 譯 著 傑克·萬托布拉斯,是Python科學棧的深度用戶和開發人員,目前是華盛頓大學eScience學院物理科學研究院院長,研究方向為天文學。同時,他還為很多領域的科學家提供建議和咨詢。 ![](https://img10.360buyimg.com/imgzone/jfs/t1/147514/7/5440/73116/5f34a3beE3ba58783/f5b2391383f5625c.jpg)
" |