本書基于Python 3.13.0,以項目教學的方式,循序漸進地講解Python 數(shù)據(jù)分析的基本原理和具體應用的方法與技巧。全書分為6個項目,具體內(nèi)容為Python數(shù)據(jù)分析基礎、NumPy數(shù)據(jù)探索和預處理、Pandas數(shù)據(jù)處理與分析、Matplotlib 數(shù)據(jù)可視化、SciPy統(tǒng)計推斷與探索性分析、Scikit-learn庫模型與數(shù)據(jù)預處理。本書實例豐富、內(nèi)容翔實、操作方法簡單易學,不僅適合作為職業(yè)院校計算機與軟件工程相關專業(yè)的教材,還可供從事數(shù)據(jù)分析相關工作的專業(yè)人士參考。
唐新宇,中共黨員,博士,教授,高級軟件開發(fā)工程師,現(xiàn)任計算機學院院長,曾獲"全國優(yōu)秀教師”稱號,廣東省"南粵優(yōu)秀教師”稱號。廣東省二類品牌專業(yè)建設項目——計算機應用技術(shù)專業(yè)專業(yè)帶頭人,主持 2019年廣東省教育教學成果獎,獲"二等獎”。研究方向為軟件技術(shù)、信息系統(tǒng)開發(fā)管理。主持省級教研項目4項、院級精品課程建設項目1項、院級教研教改項目5項;發(fā)表教研論文18篇,主編/參編出版教材5本。近年來先后指導學生5人次分別在省級、國家級軟件設計大賽中獲獎。現(xiàn)兼任肇慶市計算機學會常務理事兼計算機高級專家評審委員會副主任,廣東東方亮培訓學院特聘教授等職。
項目一 Python數(shù)據(jù)分析基礎 1
任務一 認識Python數(shù)據(jù)分析工具 1
一、Python簡介 2
二、Python 內(nèi)置函數(shù) 6
三、下載和安裝Python 7
四、安裝Python庫 11
任務二 PyCharm集成開發(fā)環(huán)境 13
一、下載和安裝 PyCharm 13
二、新建PyCharm項目文件 17
三、新建PyCharm文件 19
四、PyCharm的編輯環(huán)境 19
五、PyCharm加載和導入模塊 22
任務三 Python 數(shù)據(jù)類型 28
一、數(shù)據(jù)類型 28
二、輸入 / 輸出函數(shù) 32
三、運算符和基本數(shù)學函數(shù) 34
四、數(shù)據(jù)迭代輸出 37
五、數(shù)據(jù)類型的轉(zhuǎn)換 37
六、函數(shù)定義 40
任務四 Python 流程控制 41
一、表達式語句 42
二、順序結(jié)構(gòu) 43
三、選擇結(jié)構(gòu) 44
四、循環(huán)結(jié)構(gòu) 47
五、條件表達式 48
六、流程控制命令 49
七、程序調(diào)試 50
項目思維導圖 52
項目實操 52
實操一 用戶輸入并計算兩數(shù)之和 52
實操二 打印正整數(shù)的階乘 53
項目二 NumPy數(shù)據(jù)探索和預處理 54
任務一 NumPy數(shù)組操作 55
一、數(shù)組的數(shù)據(jù)類型 55
二、創(chuàng)建數(shù)組 58
三、數(shù)組的屬性 62
四、數(shù)組的索引 63
任務二 NumPy數(shù)組運算 67
一、數(shù)值數(shù)組 67
二、數(shù)組的數(shù)學運算 72
三、深拷貝和淺拷貝 75
任務三 數(shù)據(jù)加載、統(tǒng)計與預處理 76
一、數(shù)據(jù)加載 76
二、數(shù)據(jù)統(tǒng)計 79
三、數(shù)據(jù)歸一化和標準化 81
項目總結(jié) 85
項目實操 86
實操一 某市超市月度銷售數(shù)據(jù)統(tǒng)計 86
實操二 分析城市PM2.5監(jiān)測數(shù)據(jù) 88
項目三 Pandas數(shù)據(jù)處理與分析 91
任務一 Pandas數(shù)據(jù)采集 92
一、Series 對象 93
二、DataFrame 對象 97
三、電子表格文件 101
四、文本文件 106
五、數(shù)據(jù)集文件 108
任務二 Pandas 數(shù)據(jù)預處理與探索 112
一、數(shù)據(jù)清洗 112
二、數(shù)據(jù)轉(zhuǎn)換 121
三、數(shù)據(jù)合并 123
四、數(shù)據(jù)提取 125
五、數(shù)據(jù)分類 128
六、數(shù)據(jù)排序 129
七、統(tǒng)計分組 133
任務三 Pandas 描述性統(tǒng)計分析 137
一、集中趨勢分析 138
二、離散程度分析 139
三、相關性分析 140
四、頻數(shù)分析 142
項目總結(jié) 143
項目實操 143
實操一 各城市房源數(shù)據(jù)分析 143
實操二 航班乘客數(shù)據(jù)分析 147
項目四 Matplotlib數(shù)據(jù)可視化 151
任務一 認識圖表窗口 152
一、圖表的基本組成 152
二、創(chuàng)建圖形窗口 153
三、繪制折線圖 154
四、創(chuàng)建子圖 158
任務二 圖表通用屬性設置 160
一、圖表屬性參數(shù) 161
二、坐標系設置 162
三、圖形標注 165
任務三 核心繪圖函數(shù) 176
一、柱形圖 176
二、直方圖 179
三、餅圖 181
四、散點圖 183
五、面積圖 185
六、箱形圖 186
七、雷達圖 188
項目總結(jié) 189
項目實操 190
實操一 體檢數(shù)據(jù)可視化分析 190
實操二 人口統(tǒng)計數(shù)據(jù)可視化 192
項目五 SciPy統(tǒng)計推斷與探索性分析 194
任務一 相關性分析 195
一、正態(tài)分布的相關分析 196
二、非正態(tài)分布的相關分析 198
任務二 卡方檢驗 200
一、正態(tài)性檢驗 200
二、方差齊性檢驗 205
三、擬合優(yōu)度卡方檢驗 206
任務三 t檢驗 207
一、單樣本t檢驗 208
二、獨立樣本t檢驗 209
三、配對樣本t檢驗 211
任務四 方差分析 213
一、單因素方差分析 213
二、多因素方差分析 214
項目總結(jié) 216
項目實操 216
實操一 遺失的信件數(shù)據(jù)分析 216
實操二 血液黏稠度影響因素分析 218
項目六 Scikit-learn庫模型與數(shù)據(jù)預處理 221
任務一 Scikit-learn庫數(shù)據(jù)集 221
一、數(shù)據(jù)集加載 222
二、UCI機器學習庫 225
三、數(shù)據(jù)集劃分 227
任務二 數(shù)據(jù)預處理 228
一、處理異常值 228
二、特征離散化 233
三、特征選擇 236
四、特征編碼 241
五、特征縮放 245
任務三 分類算法 248
一、生成分類數(shù)據(jù)集 248
二、分類算法模型 249
三、二進制編碼 251
四、評估分類模型的性能 253
任務四 回歸算法 256
一、生成回歸數(shù)據(jù)集 256
二、普通回歸模型 258
三、多項式回歸模型 262
項目總結(jié) 264
項目實操 264
實操一 葡萄酒數(shù)據(jù)集預處理分析 264