Python數(shù)據(jù)分析與應用:從數(shù)據(jù)獲取到可視化
定 價:52 元
叢書名:Python應用編程叢書
- 作者:[中國]黑馬程序員
- 出版時間:2019/1/1
- ISBN:9787113251451
- 出 版 社:中國鐵道出版社
- 中圖法分類:TP311.561
- 頁碼:
- 紙張:膠版紙
- 版次:
- 開本:16開
本書采用理論與案例相結合的形式,以Anaconda為主要開發(fā)工具,系統(tǒng)、全面地介紹了Python數(shù)據(jù)分析的相關知識。全書共分為9章,第1章介紹了數(shù)據(jù)分析的基本概念,以及開發(fā)工具的安裝和使用;第2~6章介紹了Python數(shù)據(jù)分析的常用庫及其應用,涵蓋了科學計算庫NumPy、數(shù)據(jù)分析庫Pandas、數(shù)據(jù)可視化庫Matplotlib、Seaborn與Bokeh;第7、8章主要介紹了時間序列和文本數(shù)據(jù)的分析;第9章結合之前所學的技術開發(fā)了一個綜合案例,演示如何在項目中運用所學的知識。除了第1章外,其他章節(jié)都包含了很多示例和綜合案例,通過動手操作和練習,可以幫助讀者更好地理解和掌握所學的知識。本書適合作為高等院校計算機相關專業(yè)的大數(shù)據(jù)技術類課程教材,也可以作為大數(shù)據(jù)技術愛好者入門用書。
(1)本書采用理論與案例相結合的形式,以 Anaconda 為主要開發(fā)工具,系統(tǒng)、全面地介紹了 Python 數(shù)據(jù)分析的相關知識。(2)zui后一章為綜合案例,演示如何在項目中運用所學的知識。
隨著大數(shù)據(jù)時代的到來,數(shù)據(jù)已經(jīng)成為與物質(zhì)資產(chǎn)和人力資本同樣重要的基礎生產(chǎn)要素,如何從數(shù)據(jù)里面發(fā)現(xiàn)并挖掘有價值的信息成為一個熱門的研究課題;谶@種需求,數(shù)據(jù)分析技術應運而生。數(shù)據(jù)分析是有目的地收集、整理、加工和分析數(shù)據(jù),提煉出有價值信息的一個過程,它可以幫助企業(yè)或個人預測未來趨勢和行為,規(guī)避風險,使得商務和生產(chǎn)活動具有前瞻性。Python在數(shù)據(jù)分析、探索性計算、數(shù)據(jù)可視化等方面都有非常成熟的庫和活躍的社區(qū),從21世紀開始,在行業(yè)應用和學術研究中使用Python進行數(shù)據(jù)分析的勢頭越來越猛,對于要往數(shù)據(jù)分析方向發(fā)展的讀者而言,學習Python數(shù)據(jù)分析是一個不錯的選擇。本書站在初學者的角度,循序漸進地介紹了學習數(shù)據(jù)分析必備的基礎知識,以及一些比較優(yōu)秀的數(shù)據(jù)分析工具,幫助讀者具備數(shù)據(jù)分析的相關技能,能夠獨立編寫項目,以勝任Python數(shù)據(jù)分析工程師相關崗位的工作。本書在講解時,采用需求引入的方式,循序漸進地介紹了數(shù)據(jù)分析工具的基本使用,同時對一些比較特殊的時間序列和文本數(shù)據(jù)的分析進行了拓展講解,提高了讀者的開發(fā)興趣和開發(fā)能力。作為開發(fā)人員,要想真正掌握一門技術,離不開多動手練習,所以本書在繪聲繪色講解知識的同時,不斷地增加案例,有針對某個知識點的示例程序,也有針對某章的案例,zui大程度地幫助讀者真正掌握Python數(shù)據(jù)分析的核心技術。本書基于Python 3,系統(tǒng)全面地講解了Python數(shù)據(jù)分析的基礎知識,全書共9章,具體章節(jié)內(nèi)容如下。第1章主要是帶領大家了解數(shù)據(jù)分析,包括數(shù)據(jù)分析產(chǎn)生背景、什么是數(shù)據(jù)分析、數(shù)據(jù)分析的應用場景、數(shù)據(jù)分析的流程、開發(fā)工具的基本使用及常見數(shù)據(jù)分析工具等。通過本章的學習,希望大家能夠對數(shù)據(jù)分析有一個初步的認識,并為后續(xù)章節(jié)的學習準備好開發(fā)環(huán)境。第2章主要針對科學計算庫NumPy進行講解,包括創(chuàng)建數(shù)組、數(shù)據(jù)類型、數(shù)組運算、索引和切片操作、轉置和軸對稱、通用函數(shù)、使用數(shù)組處理數(shù)據(jù)、線性代數(shù)模塊及隨機數(shù)模塊等,并結合酒鬼漫步的案例,講解如何使用NumPy數(shù)組參與簡單的運算。希望讀者能熟練使用NumPy包,為后面章節(jié)的學習奠定基礎。第3章主要介紹Pandas的基礎功能,包括數(shù)據(jù)結構分析、索引操作、算術運算與數(shù)據(jù)對齊、數(shù)據(jù)排序、統(tǒng)計計算與描述、層次化索引和讀寫操作,并結合北京高考分數(shù)線的分析案例,講解如何使用Pandas操作數(shù)據(jù)。通過對本章的學習,希望大家可以用Pandas實現(xiàn)簡單的操作,為后續(xù)深入學習打好扎實的基礎。第4章進一步介紹了Pandas的數(shù)據(jù)預處理,包括數(shù)據(jù)清洗、數(shù)據(jù)合并、數(shù)據(jù)重塑和數(shù)據(jù)轉換,并結合預處理部分地區(qū)信息的案例,講解了如何利用Pandas預處理數(shù)據(jù)。數(shù)據(jù)預處理是數(shù)據(jù)分析中必不可少的環(huán)節(jié),希望大家要多加練習,并能夠在實際場景中選擇合理的方式對數(shù)據(jù)進行預處理操作,另外,還可以參考官網(wǎng)提供的文檔深入學習。第5章繼續(xù)介紹了Pandas的聚合與分組運算,包括分組聚合的原理、分組操作、數(shù)據(jù)聚合及其他分組級運算,并結合運動員基本信息的案例,講解如何在項目中應用分組與聚合運算。大家在學習與理解的同時,要多加練習,可根據(jù)具體情況選擇合理的技術進行運用即可。第6章主要介紹了幾個數(shù)據(jù)可視化工具,包括Python 2D繪圖庫Matplotlib、繪制統(tǒng)計數(shù)據(jù)的庫Seaborn和交互式可視化的庫Bokeh,并結合某年旅游景點的案例,講解如何使用Matplotlib庫繪制圖表輔助分析。希望通過本章的學習,讀者可以體會到在數(shù)據(jù)分析中運用可視化工具的好處。第7章圍繞著時間序列數(shù)據(jù)分析進行了介紹,包括創(chuàng)建時間序列、時間序列的索引和切片操作、固定頻率的時間序列、時間周期與計算、重采樣、滑動窗口及時序模型ARIMA,并結合預測股票收盤價的案例,講解了在項目中如何用時序模型對時間序列數(shù)據(jù)進行預測分析。通過對本章內(nèi)容的學習,讀者應該掌握處理時間序列數(shù)據(jù)的一些技巧,并靈活加以運用。第8章主要針對文本數(shù)據(jù)分析進行講解,包括文本數(shù)據(jù)分析的工具、文本預處理、文本情感分析、文本相似度和文本分類,并結合商品評價分析的案例,講解了如何利用NLTK與jieba預處理和分析文本數(shù)據(jù)。希望通過對本章知識的學習,讀者可以理解文本數(shù)據(jù)分析的原理,以便后續(xù)能基于機器學習更深入地去探索。第9章是一個完整的實戰(zhàn)項目,用于統(tǒng)計分析當前北京租房的信息,包括數(shù)據(jù)收集、預處理數(shù)據(jù)、數(shù)據(jù)分析,以及利用圖表展現(xiàn)數(shù)據(jù)。希望通過對本章的學習,讀者能夠靈活地運用數(shù)據(jù)分析的技術,具備開發(fā)簡單項目的能力。在學習過程中,讀者一定要親自實踐本書中的案例代碼。如果不能完全理解書中所講知識,讀者可以登錄博學谷平臺,通過平臺中的教學視頻進行深入學習。學習完一個知識點后,要及時在博學谷平臺上進行測試,以鞏固學習內(nèi)容。另外,如果讀者在理解知識點的過程中遇到困難,建議不要糾結于某個地方,可以先往后學習。通常來講,通過逐漸深入的學習,前面不懂和疑惑的知識點也就能夠理解了。在學習編程的過程中,一定要多動手實踐,如果在實踐的過程中遇到問題,建議多思考,理清思路,認真分析問題發(fā)生的原因,并在問題解決后總結出經(jīng)驗。本書的編寫和整理工作由傳智播客教育科技股份有限公司完成,主要參與人員有呂春林、高美云、王曉娟、孫東等。全體人員在近一年的編寫過程中付出了很多辛勤的汗水,在此一并表示衷心的感謝。盡管我們付出了zui大的努力,但書中難免會有不妥之處,歡迎各界專家和讀者朋友們來信給予寶貴意見,我們將不勝感激。您在閱讀本書時,如發(fā)現(xiàn)任何問題或有不認同之處,可以通過電子郵件與我們?nèi)〉寐?lián)系。請發(fā)送電子郵件至:itcast_book@vip.sina.com。黑馬程序員2018年11月12日于北京
江蘇傳智播客教育科技股份有限公司(簡稱傳智播客)是一家專門致力于高素質(zhì)軟件開發(fā)人才培養(yǎng)的高科技公司!昂隈R程序員”是傳智播客旗下高端IT教育品牌。
第1章 數(shù)據(jù)分析概述 11.1 數(shù)據(jù)分析的背景 11.2 什么是數(shù)據(jù)分析 21.3 數(shù)據(jù)分析的應用場景 21.4 數(shù)據(jù)分析的流程 31.5 為什么選擇Python做數(shù)據(jù)分析 41.6 創(chuàng)建新的Python環(huán)境——Anaconda 51.6.1 Anaconda發(fā)行版本概述 51.6.2 在Windows系統(tǒng)中安裝Anaconda 51.6.3 通過Anaconda管理Python包 71.7 啟用Jupyter Notebook 91.7.1 啟動Anaconda自帶的Jupyter Notebook 91.7.2 Jupyter Notebook界面詳解 101.7.3 Jupyter Notebook的基本使用 131.8 常見的數(shù)據(jù)分析工具 16小結 17習題 17第2章 科學計算庫NumPy 192.1 認識NumPy數(shù)組對象 192.2 創(chuàng)建NumPy數(shù)組 212.3 ndarray對象的數(shù)據(jù)類型 222.3.1 查看數(shù)據(jù)類型 222.3.2 轉換數(shù)據(jù)類型 232.4 數(shù)組運算 242.4.1 矢量化運算 242.4.2 數(shù)組廣播 252.4.3 數(shù)組與標量間的運算 252.5 ndarray的索引和切片 262.5.1 整數(shù)索引和切片的基本使用 262.5.2 花式(數(shù)組)索引的基本使用 282.5.3 布爾型索引的基本使用 292.6 數(shù)組的轉置和軸對稱 302.7 NumPy通用函數(shù) 322.8 利用NumPy數(shù)組進行數(shù)據(jù)處理 342.8.1 將條件邏輯轉為數(shù)組運算 342.8.2 數(shù)組統(tǒng)計運算 342.8.3 數(shù)組排序 352.8.4 檢索數(shù)組元素 362.8.5 唯一化及其他集合邏輯 362.9 線性代數(shù)模塊 372.10 隨機數(shù)模塊 382.11 案例——酒鬼漫步 39小結 40習題 40第3章 數(shù)據(jù)分析工具Pandas 423.1 Pandas的數(shù)據(jù)結構分析 423.1.1 Series 423.1.2 DataFrame 443.2 Pandas索引操作及高級索引 463.2.1 索引對象 463.2.2 重置索引 473.2.3 索引操作 493.3 算術運算與數(shù)據(jù)對齊 533.4 數(shù)據(jù)排序 543.4.1 按索引排序 543.4.2 按值排序 553.5 統(tǒng)計計算與描述 563.5.1 常用的統(tǒng)計計算 573.5.2 統(tǒng)計描述 583.6 層次化索引 593.6.1 認識層次化索引 593.6.2 層次化索引的操作 643.7 讀寫數(shù)據(jù)操作 683.7.1 讀寫文本文件 683.7.2 讀寫Excel文件 703.7.3 讀取HTML表格數(shù)據(jù) 723.7.4 讀寫數(shù)據(jù)庫 733.8 案例——北京高考分數(shù)線統(tǒng)計分析 772.8.1 案例需求 772.8.2 數(shù)據(jù)準備 772.8.3 功能實現(xiàn) 78小結 81習題 81第4章 數(shù)據(jù)預處理 834.1 數(shù)據(jù)清洗 834.1.1 空值和缺失值的處理 834.1.2 重復值的處理 884.1.3 異常值的處理 904.1.4 更改數(shù)據(jù)類型 944.2 數(shù)據(jù)合并 964.2.1 軸向堆疊數(shù)據(jù) 964.2.2 主鍵合并數(shù)據(jù) 994.2.3 根據(jù)行索引合并數(shù)據(jù) 1034.2.4 合并重疊數(shù)據(jù) 1054.3 數(shù)據(jù)重塑 1064.3.1 重塑層次化索引 1064.3.2 軸向旋轉 1094.4 數(shù)據(jù)轉換 1104.4.1 重命名軸索引 1104.4.2 離散化連續(xù)數(shù)據(jù) 1124.4.3 啞變量處理類別型數(shù)據(jù) 1134.5 案例——預處理部分地區(qū)信息 1154.5.1 案例需求 1154.5.2 數(shù)據(jù)準備 1154.5.3 功能實現(xiàn) 116小結 123習題 123第5章 數(shù)據(jù)聚合與分組運算 1255.1 分組與聚合的原理 1255.2 通過groupby()方法將數(shù)據(jù)拆分成組 1265.3 數(shù)據(jù)聚合 1325.3.1 使用內(nèi)置統(tǒng)計方法聚合數(shù)據(jù) 1325.3.2 面向列的聚合方法 1325.4 分組級運算 1365.4.1 數(shù)據(jù)轉換 1365.4.2 數(shù)據(jù)應用 1385.5 案例——運動員信息的分組與聚合 1415.5.1 案例需求 1415.5.2 數(shù)據(jù)準備 1415.5.3 功能實現(xiàn) 142小結 146習題 147第6章 數(shù)據(jù)可視化 1496.1 數(shù)據(jù)可視化概述 1496.1.1 什么是數(shù)據(jù)可視化 1496.1.2 常見的圖表類型 1506.1.3 數(shù)據(jù)可視化的工具 1546.2 Matplotlib——繪制圖表 1556.2.1 通過figure()函數(shù)創(chuàng)建畫布 1556.2.2 通過subplot()函數(shù)創(chuàng)建單個子圖 1576.2.3 通過subplots()函數(shù)創(chuàng)建多個子圖 1586.2.4 通過add_subplot()方法添加和選中子圖 1606.2.5 添加各類標簽 1616.2.6 繪制常見圖表 1626.2.7 本地保存圖形 1676.3 Seaborn——繪制統(tǒng)計圖形 1686.3.1 可視化數(shù)據(jù)的分布 1686.3.2 用分類數(shù)據(jù)繪圖 1746.4 Bokeh——交互式可視化庫 1786.4.1 認識Bokeh庫 1786.4.2 通過Plotting繪制圖形 1796.5 案例——畫圖分析某年旅游景點數(shù)據(jù) 1806.5.1 案例需求 1816.5.2 數(shù)據(jù)準備 1816.5.3 功能實現(xiàn) 181小結 185習題 185第7章 時間序列分析 1877.1 時間序列的基本操作 1877.1.1 創(chuàng)建時間序列 1877.1.2 通過時間戳索引選取子集 1897.2 固定頻率的時間序列 1917.2.1 創(chuàng)建固定頻率的時間序列 1917.2.2 時間序列的頻率、偏移量 1937.2.3 時間序列的移動 1957.3 時間周期及計算 1967.3.1 創(chuàng)建時期對象 1967.3.2 時期的頻率轉換 1987.4 重采樣 1987.4.1 重采樣方法(resample) 1997.4.2 降采樣 2007.4.3 升采樣 2017.5 數(shù)據(jù)統(tǒng)計——滑動窗口 2037.6 時序模型——ARIMA 2067.7 案例——股票收盤價分析 2077.7.1 案例需求 2077.7.2 數(shù)據(jù)準備 2077.7.3 功能實現(xiàn) 208小結 213習題 214第8章 文本數(shù)據(jù)分析 2168.1 文本數(shù)據(jù)分析工具 2168.1.1 NLTK與jieba概述 2168.1.2 安裝NLTK和下載語料庫 2178.1.3 jieba庫的安裝 2198.2 文本預處理 2208.2.1 預處理的流程 2208.2.2 分詞 2218.2.3 詞性標注 2238.2.4 詞形歸一化 2248.2.5 刪除停用詞 2268.3 文本情感分析 2278.4 文本相似度 2298.5 文本分類 2328.6 案例——商品評價分析 2358.6.1 案例需求 2358.6.2 數(shù)據(jù)準備 2368.6.3 功能實現(xiàn) 236小結 240習題 240第9章 數(shù)據(jù)分析實戰(zhàn)——北京租房數(shù)據(jù)統(tǒng)計分析 2429.1 數(shù)據(jù)來源 2429.2 數(shù)據(jù)讀取 2439.3 數(shù)據(jù)預處理 2449.3.1 重復值和空值處理 2449.3.2 數(shù)據(jù)轉換類型 2469.4 圖表分析 2479.4.1 房源數(shù)量、位置分布分析 2489.4.2 戶型數(shù)量分析 2559.4.3 平均租金分析 2589.4.4 面積區(qū)間分析 260小結 262