Python數(shù)據(jù)分析與可視化教程(微課版)
定 價:69.8 元
- 作者:夏敏捷 尚展壘
- 出版時間:2024/1/1
- ISBN:9787115626844
- 出 版 社:人民郵電出版社
- 中圖法分類:TP311.561
- 頁碼:319
- 紙張:
- 版次:01
- 開本:16開
本書以Python 3.9為編程環(huán)境,從Python編程基礎(chǔ)到擴展庫,再到數(shù)據(jù)分析,逐步展開Python數(shù)據(jù)分析與可視化教學。本書首先簡要介紹數(shù)據(jù)分析與可視化的相關(guān)概念,并介紹Python基礎(chǔ)知識;然后按照數(shù)據(jù)分析的主要步驟,重點介紹與數(shù)據(jù)獲取、數(shù)據(jù)處理、數(shù)據(jù)分析、數(shù)據(jù)可視化以及機器學習建模過程相關(guān)的擴展庫,包括NumPy、Pandas、BeautifulSoup、sklearn、Matplotlib、seaborn、pyecharts等;最后通過股票數(shù)據(jù)量化分析和銷售業(yè)客戶價值數(shù)據(jù)分析兩個案例實戰(zhàn)演示Python和相關(guān)擴展庫的應(yīng)用,將Python數(shù)據(jù)分析和可視化知識與實用案例有機結(jié)合。
本書適合作為高等院校本科生“數(shù)據(jù)分析”等課程的教材,也適合作為數(shù)據(jù)分析初學者的自學用書,還適合從事數(shù)據(jù)分析相關(guān)工作的工程師和愛好者閱讀。
1.本書通過編寫經(jīng)典、有趣的案例來教授Python數(shù)據(jù)分析與可視化,并且采用可視化展示效果。通過實例來解釋數(shù)據(jù)分析的原理和方式。
2.列出完整的案例代碼,對源代碼進行了詳細解說。并且每章都有實訓內(nèi)容。
3.每款案例均提供詳細的設(shè)計思路、關(guān)鍵技術(shù)分析以及具體的解決步驟方案,讓讀者進入Python數(shù)據(jù)分析的大門,真正了解數(shù)據(jù)分析設(shè)計的秘密同時掌握相應(yīng)技巧。
夏敏捷 中原工學院教師,主要研究項目及領(lǐng)域:計算機、可視化、游戲開發(fā)等。 個人榮譽:2019年度被評為校級師德標兵,2020年度被評為校級教學名師。 出版圖書: 《Python項目案例開發(fā)從入門到實戰(zhàn)》清華大學出版社,2019年, 年銷量8000冊。 《Python程序設(shè)計——從基礎(chǔ)開發(fā)到數(shù)據(jù)分析(微課版)》清華大學出版社,2020年,年銷量8000冊。 《Python基礎(chǔ)入門-微課視頻版》清華大學出版社,2021年,年銷量5000。
1.1 數(shù)據(jù)與大數(shù)據(jù) 1
1.2 數(shù)據(jù)分析 2
1.3 數(shù)據(jù)可視化 3
1.3.1 數(shù)據(jù)可視化的目標 3
1.3.2 數(shù)據(jù)可視化的作用 4
1.3.3 數(shù)據(jù)可視化的優(yōu)勢 5
1.4 數(shù)據(jù)分析流程 5
1.5 Python數(shù)據(jù)分析與可視化 6
1.5.1 為什么選擇Python做數(shù)據(jù)分析 6
1.5.2 Python數(shù)據(jù)分析與可視化常用類庫 7
1.6 Jupyter Notebook的安裝和使用 8
1.6.1 Jupyter Notebook的安裝 8
1.6.2 Jupyter Notebook的使用 9
1.7 PyCharm的安裝和使用 11
習題 13
實驗一 熟悉Python開發(fā)環(huán)境 13
2.1 Python語言簡介 15
2.2 Python語言基本語法 16
2.2.1 Python基礎(chǔ)數(shù)據(jù)類型 16
2.2.2 Python數(shù)據(jù)結(jié)構(gòu) 17
2.2.3 Python控制語句 26
2.2.4 Python函數(shù)與模塊 31
2.3 Python面向?qū)ο蟪绦蛟O(shè)計 36
2.3.1 定義和使用類 36
2.3.2 構(gòu)造函數(shù) 37
2.3.3 析構(gòu)函數(shù) 38
2.3.4 實例屬性和類屬性 38
2.3.5 私有成員與公有成員 39
2.3.6 方法 40
2.3.7 類的繼承 41
2.4 Python圖形用戶界面設(shè)計 43
2.4.1 創(chuàng)建Windows窗口 43
2.4.2 幾何布局管理器 44
2.4.3 Tkinter組件 47
2.4.4 Python事件處理 58
2.4.5 圖形用戶界面設(shè)計應(yīng)用案例 62
2.5 操作常用文件 65
2.5.1 操作CSV文件 65
2.5.2 操作Excel文件 67
2.5.3 操作JSON文件 70
2.6 Python的第三方庫 72
習題 73
實驗二 基于Tkinter的GUI程序開發(fā) 74
3.1 NumPy數(shù)組的使用 81
3.1.1 NumPy數(shù)組說明 81
3.1.2 NumPy數(shù)組中的元素訪問 85
3.1.3 NumPy數(shù)組的運算 86
3.1.4 NumPy數(shù)組的形狀操作 89
3.2 NumPy中的矩陣對象 91
3.3 NumPy中的數(shù)據(jù)統(tǒng)計分析 92
3.3.1 排序 92
3.3.2 數(shù)據(jù)去重與數(shù)據(jù)重復 94
習題 96
實驗三 NumPy數(shù)據(jù)分析應(yīng)用 97
4.1 Pandas 102
4.1.1 Series 102
4.1.2 DataFrame 105
4.2 Pandas統(tǒng)計 112
4.2.1 基本統(tǒng)計 112
4.2.2 分組統(tǒng)計 113
4.3 Pandas排序和排名 114
4.3.1 Series的排序 114
4.3.2 DataFrame的排序 115
4.3.3 Series和DataFrame的排名 116
4.4 Pandas篩選和過濾 118
4.4.1 篩選 118
4.4.2 按篩選條件進行匯總 120
4.4.3 過濾 121
4.5 Pandas數(shù)據(jù)透視表和交叉表 122
4.5.1 數(shù)據(jù)透視表 122
4.5.2 交叉表 125
4.6 Pandas數(shù)據(jù)導入導出 126
4.6.1 導入CSV文件 126
4.6.2 導入其他格式文件 127
4.6.3 導出Excel文件 127
4.6.4 導出CSV文件 128
4.6.5 讀取和寫入數(shù)據(jù)庫 128
4.7 Pandas日期處理 129
4.8 Pandas數(shù)據(jù)運算 133
4.8.1 簡單算術(shù)運算 133
4.8.2 應(yīng)用函數(shù)運算 134
4.9 Pandas數(shù)據(jù)分析應(yīng)用案例——學生成績統(tǒng)計分析 136
習題 140
實驗四 Pandas數(shù)據(jù)分析應(yīng)用 141
5.1 HTTP與網(wǎng)絡(luò)爬蟲相關(guān)知識 145
5.2 urllib庫 146
5.2.1 urllib庫簡介 146
5.2.2 urllib庫的基本使用 147
5.3 BeautifulSoup庫 155
5.3.1 BeautifulSoup庫概述 155
5.3.2 BeautifulSoup庫的四大對象 156
5.3.3 BeautifulSoup庫解析文檔樹 158
5.4 requests庫 161
5.4.1 requests庫的使用 161
5.4.2 requests庫的應(yīng)用案例 165
5.5 動態(tài)網(wǎng)頁爬蟲 168
5.5.1 AJAX動態(tài)網(wǎng)頁爬取 168
5.5.2 動態(tài)網(wǎng)頁爬蟲——爬取今日頭條新聞 171
5.6 Selenium實現(xiàn)AJAX動態(tài)加載 172
5.6.1 安裝Selenium 172
5.6.2 Selenium詳細用法 174
5.6.3 Selenium應(yīng)用案例 177
5.6.4 Selenium處理滾動條 179
5.6.5 Selenium動態(tài)加載——爬取今日頭條新聞 180
5.7 爬蟲應(yīng)用案例——Python爬取新浪國內(nèi)新聞 181
5.8 爬蟲應(yīng)用案例——Python爬取豆瓣電影TOP 250 184
習題 187
實驗五 Python爬取網(wǎng)頁信息 187
6.1 數(shù)據(jù)處理 192
6.1.1 數(shù)據(jù)清理 192
6.1.2 數(shù)據(jù)集成 195
6.1.3 數(shù)據(jù)變換與數(shù)據(jù)離散化 195
6.2 Pandas數(shù)據(jù)清理 196
6.2.1 處理缺失值 197
6.2.2 處理重復值 201
6.2.3 處理格式錯誤 202
6.2.4 處理錯誤數(shù)據(jù) 202
6.2.5 處理異常值 203
6.3 Pandas數(shù)據(jù)集成 204
6.3.1 SQL合并/連接 204
6.3.2 字段合并 206
6.3.3 記錄合并 206
6.4 Pandas數(shù)據(jù)變換與數(shù)據(jù)離散化 211
6.4.1 簡單函數(shù)變換 211
6.4.2 數(shù)據(jù)標準化 212
6.4.3 數(shù)據(jù)離散化 213
6.5 Pandas數(shù)據(jù)分析 214
6.5.1 描述性分析 214
6.5.2 分布分析 215
6.5.3 相關(guān)分析 217
習題 218
實驗六 數(shù)據(jù)處理與數(shù)據(jù)分析 218
7.1 機器學習基礎(chǔ) 225
7.1.1 機器學習概念 225
7.1.2 機器學習分類 225
7.1.3 機器學習流程 226
7.1.4 機器學習庫sklearn的安裝 227
7.2 機器學習庫sklearn的應(yīng)用 228
7.2.1 sklearn常用數(shù)據(jù)集 229
7.2.2 聚類 230
7.2.3 分類 232
7.2.4 回歸 233
7.2.5 主成分分析 235
7.2.6 鳶尾花相關(guān)的分類、預測及降維 236
習題 240
實驗七 sklearn機器學習應(yīng)用 240
8.1 Matplotlib繪圖可視化 244
8.1.1 Matplotlib.pyplot模塊——快速繪圖 244
8.1.2 繪制直方圖、條形圖、散點圖、餅圖 250
8.1.3 交互式標注 254
8.2 seaborn繪圖可視化 254
8.2.1 seaborn安裝和內(nèi)置數(shù)據(jù)集 254
8.2.2 seaborn設(shè)置背景與邊框 255
8.2.3 seaborn繪制散點圖 256
8.2.4 seaborn繪制折線圖 258
8.2.5 seaborn繪制直方圖 260
8.2.6 seaborn繪制條形圖 263
8.2.7 seaborn繪制線性回歸模型 263
8.2.8 seaborn繪制箱線圖 264
8.3 pyecharts繪圖可視化 267
8.3.1 安裝pyecharts 267
8.3.2 體驗圖表 268
8.3.3 常用圖表 271
8.4 Pandas數(shù)據(jù)分析應(yīng)用案例——天氣數(shù)據(jù)分析和展示 277
8.4.1 爬取數(shù)據(jù) 277
8.4.2 Pandas處理分析數(shù)據(jù) 279
8.4.3 數(shù)據(jù)可視化展示 279
8.5 數(shù)據(jù)可視化應(yīng)用案例——學生成績分布條形圖展示 281
8.5.1 程序設(shè)計的思路 282
8.5.2 程序設(shè)計的步驟 282
習題 284
實驗八 數(shù)據(jù)可視化 284
9.1 股票數(shù)據(jù)量化分析的背景與功能 291
9.2 程序設(shè)計的思路 291
9.3 程序設(shè)計的步驟 292
10.1 銷售業(yè)客戶價值數(shù)據(jù)分析的意義 305
10.2 程序設(shè)計的思路 305
10.3 程序設(shè)計的步驟 306
參考文獻 320