Python數據分析基礎:包含數據挖掘和機器學習 | 運動資訊第一站 - 2024年11月

Python數據分析基礎:包含數據挖掘和機器學習

作者:阮敬
出版社:五南
出版日期:2019年07月25日
ISBN:9789577634467
語言:繁體中文

  從統計學出發,最實用的Python工具書。
  ◆全書基於Python3.6.4編寫,兼容性高,為業界普遍使用之版本。
  ◆以簡明文字闡述替代複雜公式推導,力求降低學習門檻。
  ◆簡單易懂,理論完整,案例詳盡。
  ◆包含AI領域熱門的深度學習、神經網路及統計思維的數據分析,洞察市場先機。

  Python,是當今大數據時代下最為流行的編程工具之一;資料分析,則是在科學研究中日益重視的環節。當開源語言的便利性,遇上統計思維的重要性,本書便應運而生。

  本書從基礎統計學出發,是初學者的Python實用書籍。從統計學的視角和需求來寫Python的應用,有很多運用Stats Model和SciPy來進行統計分析的案例,對於具統計背景的人學習Python很有幫助!

  針對當前人工智慧領域較為熱門的「深度學習」亦有所涉獵。介紹神經網路與深度學習的基本思想、架構及步驟,並利用TensorFlow架構工具解決實際案例。是一本適合對Python和統計學有興趣的讀者、相關研究者以及企業決策者的工具書。
 

作者簡介

阮敬

  阮敬(1979.10),博士,教授,博士生導師。現任首都經濟貿易大學研究生院副院長,北京市豐台區政協委員。兼任中國消費者協會專家委員會委員、中國青年統計學家協會創始秘書長、中國現場統計研究會副秘書長兼經濟與金融統計分會副理事長、中國統計教育學會常務理事兼高等教育分會秘書長、中國商業統計學會常務理事兼數據科學與商業智慧分會學術委員會副主任、全國工業統計學教學研究會常務理事、北京大數據協會副秘書長等職。

  近年來主持國家社科基金、教育部人文社科基金、北京市自然科學基金、北京市社科基金、留學人員擇優資助基金等科研項目和世界500強企業及大型國企、國家部委及北京市政府部門等橫向課題共50餘項。

  在國內外公開發表論文50餘篇,出版專著、譯著和教材12部,先後14次榮獲國務院學位委員會全國應用統計專業學位研究生教育指導委員會優秀教育教學成果獎、全國統計科學研究優秀成果獎、北京市哲學社會科學優秀成果獎、北京市統計科學研究優秀成果獎、北京市優秀調查研究成果獎等科研和教學獎勵。本書曾入選「十三五全國統計規劃教材」。
 

第1 版前言
第2 版前言

Chapter01 Python 程式設計基礎
1.1 Python 系統組態
1.2 Python 基礎知識
1.2.1 幫助
1.2.2 識別字
1.2.3 行與縮進
1.2.4 變數與物件
1.2.5 數字與運算式
1.2.6 運算子
1.2.7 字串
1.2.8 日期和時間
1.3 資料結構與序列
1.3.1 列表
1.3.2 元組
1.3.3 字典
1.3.4 集合
1.3.5 推導式
1.4 語句與控制流
1.4.1 條件陳述式
1.4.2 迴圈語句
1.5 函數
1.5.1 函數的參數
1.5.2 全域變數與區域變數
1.5.3 匿名函數
1.5.4 遞迴和閉包
1.5.5 柯里化與反柯里化
1.5.6 常用的內建高階函數
1.6 反覆運算器、生成器和裝飾器
1.6.1 反覆運算器
1.6.2 生成器
1.6.3 裝飾器

Chapter02 Python 程式設計進階
2.1 類
2.1.1 聲明類
2.1.2 方法
2.1.3 屬性
2.1.4 繼承
2.1.5 特性
2.2 異常捕獲與容錯處理
2.2.1 錯誤和異常
2.2.2 異常處理
2.3 模組
2.4 軟體套件
2.4.1 軟體套件的組成與使用
2.4.2 常用資料分析工具庫
2.5 文件I/O
2.6 多核心平行計算
2.6.1 多進程
2.6.2 並行

Chapter03 數據預處理
3.1 numpy 基礎
3.1.1 向量
3.1.2 陣列

3.1.4 文件讀寫
3.2 pandas 基礎
3.2.1 pandas 的資料結構
3.2.2 pandas 的資料操作

Chapter04 資料描述
4.1 統計量
4.1.1 集中趨勢
4.1.2 離散程度
4.1.3 分布形狀
4.2 統計表
4.2.1 統計表的基本要素
4.2.2 統計表的編製

Chapter05 統計圖形與視覺化
5.1 matplotlib 基本繪圖
5.1.1 函數繪圖
5.1.2 圖形基本設置
5.1.3 物件導向繪圖
5.1.4 繪圖樣式
5.2 pandas 基本繪圖
5.3 基本統計圖形
5.3.1 折線圖
5.3.2 面積圖
5.3.3 長條圖
5.3.4 橫條圖
5.3.5 龍捲風圖
5.3.6 圓形圖
5.3.7 階梯圖
5.3.8 箱形圖
5.3.9 小提琴圖
5.3.10 散點圖
5.3.11 氣泡圖
5.3.12 六邊形箱形圖
5.3.13 雷達座標圖
5.3.14 輪廓圖
5.3.15 調和曲線圖
5.3.16 等高線圖
5.3.17 極座標圖
5.3.18 文字雲
5.3.19 資料地圖
5.4 其他繪圖工具

Chapter06 簡單統計推斷
6.1 簡單統計推斷的基本原理
6.1.1 資料分布
6.1.2 參數估計
6.1.3 假設檢驗
6.2 單總體參數的估計及假設檢驗
6.2.1 單總體的參數估計
6.2.2 單總體參數的假設檢驗
6.3 兩總體參數的假設檢驗
6.3.1 獨立樣本的假設檢驗
6.3.2 成對樣本的假設檢驗

Chapter07 方差分析
7.1 方差分析的基本原理
7.2 一元方差分析
7.2.1 一元單因素方差分析
7.2.2 一元多因素方差分析
7.3 協方差分析

Chapter08 非參數檢驗
8.1 非參數檢驗的基本問題
8.2 單樣本非參數檢驗
8.2.1 中位數(平均值)的檢驗
8.2.2 分布的檢驗
8.2.3 連串檢定
8.3 兩個樣本的非參數檢驗
8.3.1 獨立樣本中位數比較的Wilcoxon 秩和檢驗
8.3.2 獨立樣本的分布檢驗
8.3.3 成對(匹配)樣本中位數的檢驗
8.3.4 兩樣本的連串檢定
8.4 多個樣本的非參數檢驗
8.4.1 多個樣本的分布檢驗
8.4.2 獨立樣本位置的檢驗

Chapter09 相關分析與關聯分析
9.1 相關分析
9.1.1 函數關係與相關關係
9.1.2 簡單相關分析
9.1.3 偏相關分析
9.1.4 點二列相關分析
9.1.5 非參數相關分析
9.2 關聯分析
9.2.1 基本概念與資料預處理
9.2.2 Apriori 演算法
9.2.3 FP-growth 演算法

Chapter10 迴歸分析
10.1 線性迴歸
10.1.1 迴歸分析的基本原理
10.1.2 一元線性迴歸
10.1.3 多元線性迴歸
10.1.4 含有定性引數的線性迴歸
10.2 非線性迴歸
10.2.1 可線性化的非線性分析
10.2.2 非線性迴歸模型
10.3 多項式迴歸
10.4 分位數迴歸

Chapter11 離散因變數模型
11.1 線性機率模型
11.2 二元選擇模型
11.2.1 線性機率模型的缺陷與改進
11.2.2 二元選擇模型的基本原理
11.2.3 BINARY PROBIT 模型
11.2.4 BINARY LOGIT 模型
11.3 多重選擇模型
11.4 計數模型

Chapter12 主成分與因素分析
12.1 數據降維
12.1.1 資料降維的基本問題
12.1.2 數據降維的基本原理
12.2 主成分分析
12.2.1 主成分分析的基本概念與原理
12.2.2 主成分分析的基本步驟和過程
12.3 因素分析
12.3.1 因素分析的基本原理
12.3.2 因素分析的基本步驟和過程

Chapter13 列聯分析與對應分析
13.1 列聯分析
13.1.1 列聯表
13.1.2 列聯表的分布
13.1.3 χ2 分布與χ2 檢驗
13.1.4 χ2 分布的期望值準則
13.2 對應分析
13.2.1 對應分析的基本思想
13.2.2 對應分析的步驟和過程

Chapter14 聚類
14.1 聚類的基本原理
14.1.1 聚類的基本原則
14.1.2 單一指標的系統聚類過程
14.1.3 多指標的系統聚類過程
14.2 聚類的步驟和過程
14.2.1 系統聚類
14.2.2 K-MEANS 聚類
14.2.3 DBSCAN 聚類

Chapter15 判別和分類
15.1 判別和分類的基本思想
15.1.1 判別
15.1.2 分類
15.1.3 效果評估
15.2 常用判別方法和分類演算法
15.2.1 距離判別和線性判別
15.2.2 貝葉斯判別
15.2.3 k- 近鄰
15.2.4 決策樹
15.2.5 隨機森林
15.2.6 支持向量機

Chapter16 神經網路與深度學習
16.1 神經網路
16.1.1 基本概念與原理
16.1.2 感知機
16.1.3 多層神經網路
16.2 深度學習
16.2.1 基本概念與原理
16.2.2 卷積神經網路
16.2.3 Tensorflow

Chapter17 時間序列分析
17.1 時間序列的基本問題
17.1.1 時間序列的組成部分
17.1.2 時間序列的平穩性
17.2 ARIMA 模型的分析過程
17.2.1 ARIMA 模型
17.2.2 ARMA 模型的識別、估計與預測

附錄:各章圖形

 



第一版前言

  資料分析是科學研究中的重要環節,隨著大數據時代的迅猛發展,其愈來愈受社會和市場的重視,是科學研究、經營管理、預測與決策等過程中必不可少的基礎工作。Python 是當今大數據時代下最為流行的程式語言工具之一,在大數據領域有著十分廣泛的應用,可以展現從資料收集和資料管理到數據分析和挖掘的完整過程,其高效的程式語言和程序執行過程,能夠完全勝任日常數據分析工作的需求。

  隨著資料分析作用的日益凸顯,如何對現有資料進行整理、加工、處理和分析,以期得到所謂的結論,作為人們進行決策的依據進而展現數據的價值?如何利用現有資料對將來可能出現的資料結果或結論進行判斷或預測?不管是針對企事業單位的管理者,或決策者還是從事具體資料分析的工作人員而言,都需要進行合理資料分析流程的規劃,區分數據類型,利用適合的數據分析方法,使用方便、快捷、可靠的統計軟體作為工具,對特定資料進行分析與預測,從而洞察市場動向,觀測人心所在,把握商機,提升競爭力。而具有深厚數學背景的統計分析和資料分析方法,往往會成為相關人員繼續深入學習的門檻,甚至成為枯燥乏味的代名詞,無法體驗到資料分析成果帶來的成效。本書就是要力求降低學習難度,透過編者積累的大量真實案例和數據,主要以文字闡述替代複雜公式推導,深入淺出剖析數據分析方法的基本原理和步驟,重點在於釐清資料分析的基本思路,合理得到恰當的分析結果。在分析過程中,本書從基礎程式語言入手,主要透過使用Python 基本庫和常用工具庫的方式,用大量的實例來展示資料分析每一步驟的細節,帶領讀者走入數據分析的奇妙世界。

  本書的第1 章和第2 章主要介紹Python 的基本環境、程式語言基礎和數據預處理方面的內容,具體內容包括Python 資料類型及數據結構、語句與控制流、基本庫、函數和面向對象程式語言的基礎,以及數據分析最為常用的基本分析工具庫numpy 和pandas 基礎等。第3 章和第4 章主要介紹利用Python 進行描述分析的基本過程和方法,涵蓋了各種常用資料分析圖形的繪製和解讀,以及統計量和統計表等具體內容。第5、6、7 章主要介紹利用Python 如何進行總體推斷。在大數據時代即使資料量再大,但也離不開利用統計思想對總體特徵進行推測和判斷,這些具體內容包括參數估計、假設核對總和非參數分析。第8 章主要介紹如何用Python 來分析資料之間的關係,具體涵蓋了簡單相關分析、非參數相關分析、偏相關分析、點二列相關分析以及數據挖掘中常用的關聯分析等內容。第9 章和第10 章主要介紹如何利用Python 來進行迴歸分析。迴歸模型可以說是大部分統計分析和數據挖掘方法的基礎,本書介紹的具體內容有線性迴歸、非線性迴歸、多項式迴歸、分位數迴歸、引數含有定性變量的迴歸以及因變數含有定性變數的廣義線性迴歸分析。第11 章和第12 章主要就日常資料分析中所使用的多元統計分析方法進行介紹,具體內容包括主成分分析、因素分析、列聯分析以及對應分析等。第13 章和第14 章主要介紹在Python 中進行資料採擷所使用的聚類和分類方法。內容涵蓋系統聚類、k-means 聚類、DBSCAN 聚類、距離判別和線性判別、貝葉斯判別以及數據挖掘中的k- 近鄰、決策樹、支持向量機和隨機森林等分類方法。第15 章主要介紹Python 中使用ARIMA 建模進行時間序列分析的基本方法和思路。

  本書以實用為主要目的,因此上述大部分的資料分析過程均會使用現有常用且公認的結果較為合理的工具庫(如numpy、pandas、matplotlib、scipy、statsmodels、scikit-learn等)。對於本書提及的數據分析方法無法透過使用現成工具庫實行的,本書在相應章節中使用Python 編製了相應的函數或類,以供讀者在分析實際問題時使用和重複使用。讀者在重複用這些函數或類時,也可根據自身需要對它們進行進一步優化。

  全書採用macOS Sierra 作業系統下的Python 和Anaconda 4.3.1 的jupyternotebook 作為分析環境,希望讀者參考本書的內容邊做邊學習。為了提高學習效果,讀者應該自行把本書全部程式碼在Python 中一字一句的推敲一遍並執行之,故本書不提供電子版程式碼。但為了提高學習效率,本書附送隨書案例的全部資料。

  本書由本人在原書《實用SAS 統計分析教程》(中國統計出版社2013 年版)基礎上親自編寫完成。開放程式碼的顯著特點,大家都懂的。因此,讀者可在閱讀本書時對照原書進行實際操作,認真體會商務軟體和開放程式碼分析流程和分析結果的異同。此外,我的研究生楊磊磊和王禹提供了部分分析程式並對全書所編製的程式進行了執行驗證。儘管作者已經投入了大量時間和精力來編寫此書,但由於能力有限,如有不足之處,敬請專家與同行批評指正。
 
阮 敬
2017 年8 月23 日

第二版前言

  為適應數據科學與大數據技術領域的飛速發展,本書第2版經過將近1年時間的廣泛教學實踐和市場檢驗,在保留第1版全部優點和特色的基礎上,第2版做了許多優化、改進和創新,具體內容如下:

  1. 全書基於Python 3.6.4 對全部內容進行了更新。

  2. 將第1 版的程式設計基礎部分,根據教學難度和教學要求調整為兩個章節。即,第1章強調程式設計基礎,第2章強調程式設計的進階技能,並補充了類特性、異常捕獲與容錯處理、平行計算等程式設計的進階內容。

  3. 增加了〈神經網路與深度學習〉章節。深度學習是當前數據科學、人工智慧領域較為熱門的研究內容,第2版增加了對神經網路和深度學習基本思想、基本架構以及基本步驟的介紹,以及如何利用Python 提供的tensorflow 架構工具進行解決實際問題的案例,幫助讀者理解深度學習的理論基礎和基本演算法。

  4. 可讀和易用性進一步提高。本書第1 版在去年9月份正式出版之後,被全國幾十所高等院校採納為基礎課、專業課和選修課的教材。經過多次與授課教師和學生的溝通交流及意見回饋,第2版針對教學過程中的特別問題進行了仔細斟酌和調整,盡力使得本書內容更加生動、深入淺出和言簡意賅。
 
阮 敬
2018 年7 月22 日於洛杉磯


相關書籍