Python數據分析技術手冊:基礎·實戰·強化

《Python數據分析技術手冊:基礎·實戰·強化》是化學工業出版社於2022年出版的書籍,作者是明日科技編著

基本介紹

  • 中文名:Python數據分析技術手冊:基礎·實戰·強化
  • 作者:明日科技編著
  • 出版時間:2022年3月1日
  • 出版社:化學工業出版社
  • 頁數:338 頁
  • ISBN:9787122405166
  • 開本:16 開
  • 裝幀:平裝
內容簡介,目錄,

內容簡介

《Python數據分析技術手冊:基礎·實戰·強化》是“計算機科學與技術手晚達少冊系列”圖書之一,該系列圖書內容全面,以理論聯繫實際,能學到並做到為宗旨,以技術為核心,以案例為輔助,引領讀者全面學習基礎技術、代碼編寫方法和具體套用項目,旨在為想要進入相應領域或者已經在該領域深耕多年的技術人員提供新而全的技術性內容及案例。 本書是一本側重數據分析基礎+實踐的Python數據分析圖書,為了保證讀者可以學以致用,在內容編排方面循序漸進地進行了3個層次的講解:基礎知識鋪墊、案例進階實戰和綜合項目強化套用。 本書提供大量的資源,包含235個實例、9個方向的套用尋埋少案例和一個大型數據分析項目,力求為讀者打造一本基礎+套用+實踐一體化精彩的Python數據分析圖書。 本書不僅適合Python初學者、數據分析人員、從事與數據分析相關工作的人員、對數據分析感興趣的人員學習,而且適合從事其他崗位想掌握一定的數據分析技能的職場人員學習。

目錄

基礎篇
第1章 認識數據分析
1.1 數據分析概述 2
1.1.1 數據分析的概念 2
1.1.2 數據分析台想射的重要性 2
1.2 數據分析的基本流程 4
1.2.1 熟悉工具 4
1.2.2 明確目的 4
1.2.3 獲取數據 4
1.2.4 數據處理 4
1.2.5 數據分析 5
1.2.6 驗證結果 5
1.2.7 結果呈現 5
1.2.8 數據套用 5
1.3 數據分析常用工具 6
1.3.1 Excel 6
1.3.2 Python 6
第2章 搭建Python數據分析環境
2.1 Python概述 7
2.1.1 Python簡介 7
2.1.2 Python的版本 8
2.2 搭建Python開發環境 8
2.2.1 什麼是IDLE 8
2.2.2 安裝Python 8
2.2.3 使用IDLE編寫“hello world” 11
2.3 集成開發環境PyCharm 12
2.3.1 下載PyCharm 12
2.3.2 安裝PyCharm 14
2.3.3 運行PyCharm創建工程 15
2.3.4 第一個Python程式“Hello World!” 17
2.4 數據分析標準環境Anaconda 18
2.4.1 下載Anaconda 19
2.4.2 安裝Anaconda 20
2.5 Jupyter Notebook開發工具 22
2.5.1 認識Jupyter Notebook 22
2.5.2 新建一個Jupyter Notebook檔案 22
2.5.3 在Jupyter Notebook中編寫“Hello World” 23
第3章 NumPy基礎:數組、矩陣計算
3.1 初識NumPy 25
3.1.1 NumPy概述 25
3.1.2 安裝NumPy模組 26
3.1.3 數組相關概念 27
3.2 創建數組 28
3.2.1 創建簡單的數組 28
【實例3.1】演示如何創建數組 28
【實例3.2】為數組指定數據類型 29
【實例3.3】複製數組 29
【實例3.4】修改數組的維數 30
3.2.2 以不辯詢試同的方式創建數組 30
【實例3.5】創建指定維數和數據類型未初始化的數組 30
【實例3.6】創建指定維數(以0填充故跨察陵)的數組 30
【實例3.7】創建指定維數並以1填充的數組 31
【實例3.8】創建指定維數和數凝道據類型並以指定值填充的數組 31
3.2.3 從數值範圍創建數組 31
【實例3.9】通過數值範圍創建數組 32
【實例3.10】創建馬拉松賽前訓練等差數列數組 33
【實例3.11】通過logspace()函式解決棋盤放置小麥的問題 33
3.2.4 生成隨機數組 34
【實例3.12】隨機生成0到1之間的數組 34
【實例3.13】隨機生成滿足常態分配的數組 35
【實例3.14】生成一定範圍內的隨機數組 35
【實例3.15】生成常態分配的隨機陵膠嫌寒數組 36
3.2.5 從已有的數組中創建數組 36
【實例3.16】使用asarray()函式創建數組 37
【實例3.17】將字元串“mingrisoft”轉換為數組 37
【實例3.18】通過可疊代對象創建數組 38
【實例3.19】創建未初始化的數組 38
【實例3.20】創建以0填充的數組 39
【實例3.21】創建以1填充的數組 39
【實例3.22】創建以指定值“0.2”填充的數組 40
3.3 數組的基本操作 40
3.3.1 數據類型 40
3.3.2 數組運算 41
【實例3.23】數組加法運算 42
【實例3.24】數組的減法、乘法和除法運算 42
【實例3.25】數組的冪運算 43
【實例3.26】數組的比較運算 43
【實例3.27】數組的標量運算 44
3.3.3 數組的索引和切片 44
【實例3.28】獲取一維數組中的元素 44
【實例3.29】獲取二維數組中的元素 45
【實例3.30】實現簡單的數組切片操作 45
【實例3.31】常用的切片式索引操作 46
【實例3.32】二維數組的簡單索引操作 47
【實例3.33】二維數組的切片操作 47
3.3.4 數組重塑 48
【實例3.34】將一維數組重塑為二維數組 48
【實例3.35】將一行古詩轉換為4行5列的二維數組 48
【實例3.36】將2行3列的數組重塑為3行2列的數組 49
【實例3.37】將二維數組中的行列轉置 49
【實例3.38】轉換客戶銷售數據 50
3.3.5 數組的增、刪、改、查 51
【實例3.39】為數組增加數據 51
【實例3.40】刪除指定的數組元素 51
【實例3.41】修改指定的數組元素 52
【實例3.42】按指定條件查詢數組 52
3.4 NumPy矩陣的基本操作 53
3.4.1 創建矩陣 53
【實例3.43】創建簡單矩陣 53
【實例3.44】使用mat()函式創建常見的矩陣 54
3.4.2 矩陣運算 56
【實例3.45】矩陣加法運算 56
【實例3.46】矩陣減法、乘法和除法運算 56
【實例3.47】修改矩陣並進行乘法運算 57
【實例3.48】數組相乘與數組點乘比較 57
【實例3.49】矩陣元素之間的相乘運算 58
3.4.3 矩陣轉換 58
【實例3.50】使用T屬性實現矩陣轉置 58
【實例3.51】實現矩陣逆運算 58
3.5 NumPy常用統計分析函式 59
3.5.1 數學運算函式 59
【實例3.52】數組加、減、乘、除運算 60
【實例3.53】計算數組元素的倒數 60
【實例3.54】數組元素的冪運算 61
【實例3.55】對數組元素取余 61
【實例3.56】將數組中的一組數字四捨五入 62
【實例3.57】對數組元素向上取整 62
【實例3.58】對數組元素向下取整 62
【實例3.59】計算數組的正弦值、餘弦值和正切值 63
【實例3.60】將弧度轉換為角度 63
3.5.2 統計分析函式 64
【實例3.61】對數組元素求和、對數組元素按行和按列求和 64
【實例3.62】對數組元素求平均值、對數組元素按行和按列求平均值 65
【實例3.63】對數組元素求最大值和最小值 65
【實例3.64】計算電商各活動銷售的加權平均價 66
【實例3.65】計算電商活動價格的中位數 67
【實例3.66】求數組的方差和標準差 67
3.5.3 數組的排序 67
【實例3.67】對數組元素排序 68
【實例3.68】對數組元素升序排序 68
【實例3.69】通過排序解決成績相同學生的錄取問題 69
3.6 綜合案例——NumPy用於圖像灰度處理 69
3.7 實戰練習 70
第4章 Pandas入門
4.1 初識Pandas 72
4.1.1 Pandas概述 72
4.1.2 安裝Pandas 73
4.2 Pandas家族成員 74
4.2.1 Series對象 75
【實例4.1】創建一列數據 75
【實例4.2】創建一列“物理”成績 76
4.2.2 DataFrame對象 76
【實例4.3】通過列表創建成績表 77
【實例4.4】通過字典創建成績表 78
4.3 索引 78
4.3.1 什麼是索引 78
【實例4.5】設定索引 78
4.3.2 索引的作用 79
4.3.3 Series對象的索引 79
【實例4.6】手動設定索引 79
【實例4.7】重新設定物理成績的索引 80
【實例4.8】向前和向後填充數據 81
【實例4.9】通過位置索引獲取學生物理成績 81
【實例4.10】通過標籤索引獲取學生物理成績 81
【實例4.11】通過標籤切片獲取數據 82
【實例4.12】通過位置切片獲取數據 82
4.3.4 DataFrame對象的索引 83
【實例4.13】設定“姓名”為索引 83
【實例4.14】重新為“學生成績表”設定索引 84
【實例4.15】刪除數據後索引重置 85
4.4 綜合案例——構建身體數據並計算體質指數 85
4.5 實戰練習 86
第5章 數據讀取與處理
5.1 數據讀取與寫入 87
5.1.1 讀取與寫入Excel檔案 87
【實例5.1】讀取Excel檔案 89
【實例5.2】讀取指定Sheet頁中的數據 90
【實例5.3】讀取Excel檔案並指定行索引 91
【實例5.4】讀取Excel檔案中的第1列數據 91
【實例5.5】將數據寫入Excel檔案中 92
5.1.2 讀取與寫入CSV檔案 93
【實例5.6】讀取CSV檔案 94
5.1.3 讀取文本檔案 95
【實例5.7】讀取文本檔案 95
5.1.4 讀取HTML網頁 96
【實例5.8】Pandas也可以實現的簡單爬蟲 97
5.2 讀取資料庫中的數據 98
5.2.1 讀取MySQL資料庫中的數據 98
【實例5.9】讀取MySQL資料庫中的數據 100
5.2.2 讀取MongoDB資料庫中的數據 100
【實例5.10】讀取MongoDB資料庫中的數據 101
5.3 數據抽取 103
5.3.1 按行抽取數據 104
【實例5.11】抽取一行學生成績數據 104
5.3.2 抽取多行數據 104
【實例5.12】抽取多行學生成績數據 104
【實例5.13】抽取多個連續的學生成績數據 105
5.3.3 抽取指定列數據 105
【實例5.14】抽取學生的“語文”和“數學”成績 105
【實例5.15】抽取指定學科的成績 106
5.3.4 抽取指定的行、列數據 106
【實例5.16】抽取指定學科和指定學生的成績 107
5.4 數據的增、刪、改、查 107
5.4.1 增加數據 108
【實例5.17】增加一列“物理”成績 108
【實例5.18】使用loc屬性增加一列“物理”成績 108
【實例5.19】在第一列後面插入“物理”成績 108
【實例5.20】在成績表中增加一行數據 109
【實例5.21】在成績表中增加多行數據 109
5.4.2 刪除數據 109
【實例5.22】刪除學生成績數據 110
【實例5.23】刪除符合條件的學生成績數據 110
5.4.3 修改數據 110
【實例5.24】修改“數學”的列名 110
【實例5.25】修改多個學科的列名 111
【實例5.26】將行標題統一修改為數字編號 111
【實例5.27】修改學生成績數據 111
5.4.4 查詢數據 112
【實例5.28】通過邏輯運算符查詢數據 112
【實例5.29】通過複合運算符查詢數據 113
【實例5.30】使用query()方法簡化查詢代碼 113
【實例5.31】使用isin()方法查詢數據 113
【實例5.32】查詢女生的學習成績數據 114
【實例5.33】使用between()方法查詢數據 115
5.5 數據排序與排名 115
5.5.1 數據排序 115
【實例5.34】按“銷量”降序排序 116
【實例5.35】按照“圖書名稱”和“銷量”降序排序 117
【實例5.36】對分組統計數據進行排序 117
【實例5.37】按行數據排序 118
5.5.2 數據排名 118
【實例5.38】對產品銷量按順序進行排名 119
【實例5.39】對產品銷量進行平均排名 119
5.6 綜合案例——電商產品轉化率分析 120
5.7 實戰練習 121
第6章 數據清洗
6.1 處理缺失值 122
6.1.1 什麼是缺失值 122
6.1.2 查看缺失值 123
【實例6.1】查看數據概況 123
【實例6.2】判斷數據是否存在缺失值 123
6.1.3 處理缺失值 124
【實例6.3】將NaN填充為0 125
6.2 處理重複值 125
【實例6.4】處理淘寶電商銷售數據中的重複數據 125
6.3 異常值的檢測與處理 126
6.4 字元串操作 126
6.4.1 字元串對象方法 127
【實例6.5】字元串大小寫轉換 127
【實例6.6】去掉字元串中的空格 128
6.4.2 字元串替換方法 129
【實例6.7】使用replace()方法替換數據中指定的字元 129
【實例6.8】使用replace()方法替換標題中指定的字元 129
6.4.3 數據切分方法 130
【實例6.9】使用split()方法切分地址 130
6.4.4 字元串判斷方法 131
【實例6.10】使用contains()方法篩選數據並歸類 131
6.5 數據轉換 132
6.5.1 使用字典映射進行數據轉換 132
【實例6.11】使用map()函式將數據中的性別轉換為數字 132
6.5.2 數據分割 132
【實例6.12】分割成績數據並標記為“優秀”“良好”“一般” 133
6.5.3 分類數據數位化 134
【實例6.13】將分類數據轉換為數字 134
6.6 綜合案例——缺失值比例分析 135
6.7 實戰練習 135
第7章 數據計算與分組統計
7.1 數據計算 136
7.1.1 求和 136
【實例7.1】計算語文、數學和英語三科的總成績 137
7.1.2 求均值 137
【實例7.2】計算語文、數學和英語各科成績的平均分 137
7.1.3 求最大值 138
【實例7.3】計算語文、數學和英語各科成績的最高分 138
7.1.4 求最小值 138
【實例7.4】計算語文、數學和英語各科成績的最低分 139
7.1.5 求中位數 139
【實例7.5】計算學生各科成績的中位數1 140
【實例7.6】計算學生各科成績的中位數2 140
7.1.6 求眾數 140
【實例7.7】計算學生各科成績的眾數 141
7.1.7 求方差 141
【實例7.8】通過方差判斷誰的物理成績更穩定 142
7.1.8 標準差 142
【實例7.9】計算各科成績的標準差 143
7.1.9 求分位數 143
【實例7.10】通過分位數確定被淘汰的35%的學生 143
【實例7.11】計算日期、時間和時間增量數據的分位數 144
7.2 數據格式化 144
7.2.1 設定小數位數 145
【實例7.12】四捨五入保留指定的小數位數 145
7.2.2 設定百分比 146
【實例7.13】將指定數據格式化為百分比數據 146
7.2.3 設定千位分隔設定 146
【實例7.14】將金額格式化為帶千位分隔設定的數據 147
7.3 數據分組統計 147
7.3.1 分組統計函式groupby() 147
【實例7.15】根據“一級分類”列統計訂單數據 148
【實例7.16】根據“一級分類”列和“二級分類”列統計訂單數據 148
【實例7.17】統計各程式語言的7天點擊量 148
7.3.2 對分組數據進行疊代 149
【實例7.18】疊代“一級分類”的訂單數據 149
【實例7.19】疊代“一級分類”和“二級分類”的訂單數據 150
7.3.3 對分組的某列或多列使用聚合函式 150
【實例7.20】對分組統計結果使用聚合函式 150
【實例7.21】針對不同的列使用不同的聚合函式 150
【實例7.22】通過自定義函式實現分組統計 151
7.3.4 通過字典和Series對象進行分組統計 151
【實例7.23】通過字典分組統計“北上廣”銷量 151
【實例7.24】通過Series對象分組統計“北上廣”銷量 152
7.4 數據移位 153
【實例7.25】統計學生英語周測成績的升降情況 153
7.5 數據合併 154
7.5.1 merge()方法 154
【實例7.26】合併學生成績表 155
【實例7.27】通過索引合併數據 155
【實例7.28】對合併數據去重 156
【實例7.29】根據共有列進行合併數據 156
【實例7.30】合併數據並相互補全 157
7.5.2 concat()方法 157
7.6 數據透視表 159
7.6.1 pivot()方法 159
【實例7.31】數據透視表按年份統計城市GDP 160
7.6.2 pivot_table()方法 160
【實例7.32】數據透視表統計各部門男、女生
人數 160
7.7 綜合案例——商品月銷量對比分析 161
7.8 實戰練習 162
第8章 日期處理與時間序列
8.1 日期數據處理 163
8.1.1 DataFrame的日期數據轉換 163
【實例8.1】將各種日期字元串轉換為指定的日期格式 164
【實例8.2】將一組數據組合為日期數據 164
8.1.2 dt對象的使用 165
【實例8.3】獲取日期中的年、月、日、星期數等 165
8.1.3 獲取日期區間的數據 165
【實例8.4】獲取指定日期區間的訂單數據 166
8.1.4 按不同時期統計並顯示數據 166
【實例8.5】從日期中獲取不同的時期 168
8.2 日期範圍、頻率和移位 169
8.2.1 生成日期範圍 169
【實例8.6】按頻率生成時間段 169
【實例8.7】按複合頻率生成時間段 171
8.2.2 日期頻率轉換 171
【實例8.8】將按天的頻率轉換為按5小時的頻率 171
8.2.3 移位日期 172
【實例8.9】查看日期向前和向後分別移動兩次後的數據 172
8.3 時間區間與頻率轉換 173
8.3.1 創建時間區間 173
【實例8.10】使用Period類創建不同的時間區間 173
【實例8.11】使用period_range()函式創建時間區間 174
8.3.2 頻率轉換 175
【實例8.12】時間區間頻率轉換 175
8.4 重採樣與頻率轉換 175
8.4.1 重採樣 175
【實例8.13】將1分鐘的時間序列轉換為3分鐘的時間序列 176
8.4.2 降採樣處理 177
【實例8.14】按周統計銷售數據 177
8.4.3 升採樣處理 178
【實例8.15】每6小時統計一次數據 178
8.5 移動視窗函式 178
8.5.1 時間序列數據匯總 178
【實例8.16】統計數據的open、high、low和close值 179
8.5.2 移動視窗數據計算 179
【實例8.17】創建淘寶每日銷量數據 180
【實例8.18】在實例8.17的基礎上,使用rolling()函式計算每3天的均值 180
【實例8.19】用當天的數據代表視窗數據 180
8.6 綜合案例——股票行情數據分析 181
8.7 實戰練習 182
第9章 可視化數據分析圖表
9.1 數據分析圖表的作用 183
9.2 如何選擇適合的圖表類型 184
9.3 數據分析圖表的基本組成 184
9.4 Matplotlib概述 185
9.4.1 Matplotlib簡介 185
9.4.2 安裝Matplotlib 188
9.4.3 Matplotlib圖表之初體驗 189
【實例9.1】繪製第一張圖表 189
【實例9.2】繪製散點圖 189
9.5 圖表的常用設定 190
9.5.1 基本繪圖函式plot () 190
【實例9.3】繪製簡單折線圖 190
【實例9.4】繪製體溫折線圖 190
9.5.2 設定畫布 192
【實例9.5】自定義畫布 193
9.5.3 設定坐標軸 193
【實例9.6】為體溫折線圖設定標題 193
【實例9.7】為體溫折線圖設定刻度1 194
【實例9.8】為體溫折線圖設定刻度2 194
【實例9.9】為體溫折線圖設定坐標軸範圍 195
9.5.4 添加文本標籤 196
【實例9.10】為體溫折線圖添加基礎體溫文本標籤 196
9.5.5 設定標題和圖例 196
9.5.6 添加注釋 198
【實例9.11】為圖表添加注釋 198
9.5.7 調整圖表與畫布邊緣的間距 199
9.5.8 設定坐標軸 200
9.6 常用圖表的繪製 200
9.6.1 繪製折線圖 201
【實例9.12】繪製學生語文、數學、英語各科成績分析圖 201
9.6.2 繪製柱形圖 201
【實例9.13】繪製簡單的柱形圖 202
【實例9.14】繪製2013—2019年線上圖書銷售額
分析圖 202
【實例9.15】繪製各平台圖書銷售額分析圖 203
9.6.3 繪製直方圖 204
【實例9.16】繪製簡單直方圖 205
【實例9.17】利用直方圖分析學生數學成績分布情況 205
9.6.4 繪製餅形圖 206
【實例9.18】繪製簡單餅形圖 206
【實例9.19】通過餅形圖分析各省、市、自治區銷量占比情況 207
【實例9.20】繪製分裂餅形圖 207
【實例9.21】利用環形圖分析各省、市、自治區銷量占比情況 208
【實例9.22】利用內嵌環形圖分析各省、市、自治區銷量占比情況 209
9.6.5 繪製散點圖 209
【實例9.23】繪製簡單散點圖 210
【實例9.24】利用散點圖分析銷售收入與廣告費的相關性 210
9.6.6 繪製面積圖 211
【實例9.25】繪製簡單面積圖 211
【實例9.26】利用面積圖分析線上圖書銷售情況 212
【實例9.27】利用堆疊面積圖分析各平台圖書銷售情況 212
9.6.7 繪製熱力圖 213
【實例9.28】繪製簡單熱力圖 213
【實例9.29】利用熱力圖對比分析學生各科成績 213
9.6.8 繪製箱形圖 214
【實例9.30】繪製簡單箱形圖 215
【實例9.31】繪製多組數據的箱形圖 215
【實例9.32】通過箱形圖判斷異常值 216
9.6.9 繪製3D圖表 217
【實例9.33】繪製3D柱形圖 217
【實例9.34】繪製3D曲面圖 218
9.6.10 繪製多個子圖表 218
【實例9.35】使用subplot()函式繪製多子圖表的空圖表 219
【實例9.36】繪製包含多個子圖表的圖表 219
【實例9.37】使用subplots()函式繪製包含多子圖表的空圖表 221
【實例9.38】使用subplots()函式繪製多子圖表 221
【實例9.39】使用add_subplot()函式繪製多子圖表 222
9.6.11 圖表的保存 222
9.7 Seaborn圖表 223
9.7.1 Seaborn圖表概述 223
9.7.2 Seaborn圖表之初體驗 224
【實例9.40】繪製簡單的柱形圖 224
9.7.3 Seaborn圖表的基本設定 225
9.7.4 常用圖表的繪製 226
【實例9.41】使用relplot()函式繪製學生語文成績折線圖 226
【實例9.42】使用lineplot()函式繪製學生語文成績折線圖 226
【實例9.43】利用多折線圖分析學生各科成績 226
【實例9.44】繪製簡單直方圖 227
【實例9.45】利用條形圖分析學生各科成績 228
【實例9.46】利用散點圖分析“小費” 228
【實例9.47】利用線性回歸圖表分析“小費” 230
【實例9.48】利用箱形圖分析“小費”異常數據 231
【實例9.49】利用核密度圖分析“鳶尾花” 232
【實例9.50】利用提琴圖分析“小費” 232
9.8 綜合案例——京東電商單品銷量同比增長情況分析 233
9.9 實戰練習 235
第10章 機器學習Scikit-Learn
10.1 Scikit-Learn簡介 236
10.2 安裝Scikit-Learn 236
10.3 線性模型 237
10.3.1 最小二乘法回歸 238
【實例10.1】智慧型預測房價 239
10.3.2 嶺回歸 239
【實例10.2】使用嶺回歸函式實現智慧型預測房價 240
10.4 支持向量機 240
【實例10.3】“波士頓房價”預測 241
10.5 聚類 242
10.5.1 什麼是聚類 242
10.5.2 聚類算法 243
10.5.3 聚類模組 243
【實例10.4】對一組數據進行聚類 244
10.5.4 聚類數據生成器 245
【實例10.5】生成用於聚類的測試數據 245
10.6 綜合案例——預測考試成績 246
10.7 實戰練習 247
實戰篇
第11章 處理大型數據集
11.1 概述 249
11.2 案例效果預覽 250
11.3 案例準備 251
11.4 業務流程 251
11.5 實現過程 251
11.5.1 數據準備 251
11.5.2 數據分塊 251
11.5.3 查看與處理數據 252
11.5.4 保存分塊數據 253
11.5.5 合併分塊數據 253
11.6 關鍵技術 253
第12章 快速批量合併和處理Excel
12.1 概述 255
12.2 案例效果預覽 255
12.3 案例準備 258
12.4 業務流程 258
12.5 實現過程 258
12.5.1 數據準備 258
12.5.2 將多個Excel合併為一個Excel 258
12.5.3 合併指定的Excel的指定列到一個Excel 259
12.5.4 合併指定的Excel到一個Excel的多個Sheet 260
12.5.5 批量合併資料夾中所有的Excel到一個Excel的多個Sheet 260
12.6 關鍵技術 261
第13章 爬取分析NBA球員薪資數據
13.1 概述 263
13.2 案例效果預覽 263
13.3 案例準備 264
13.4 業務流程 264
13.5 實現過程 265
13.5.1 數據準備 265
13.5.2 確定網頁格式 265
13.5.3 爬取數據 265
13.5.4 清洗數據 267
13.5.5 繪製水平柱形圖分析湖人隊薪資狀況 268
13.6 關鍵技術 268
第14章 獲取和分析股票行情數據
14.1 概述 270
14.2 案例效果預覽 270
14.3 案例準備 272
14.4 業務流程 272
14.5 實現過程 272
14.5.1 安裝第三方模組 272
14.5.2 獲取股票歷史數據 273
14.5.3 數據歸一化處理 274
14.5.4 可視化股票走勢圖 275
14.5.5 股票收盤價格走勢圖 275
14.5.6 股票漲跌情況分析圖 275
14.5.7 股票k線走勢圖 276
14.6 關鍵技術 277
第15章 基於文本數據的京東商家評論數據分析
15.1 概述 280
15.2 案例效果預覽 280
15.3 案例準備 281
15.4 業務流程 281
15.5 實現過程 281
15.5.1 安裝第三方模組 281
15.5.2 數據準備 282
15.5.3 數據清洗 282
15.5.4 總體評價狀況分析 283
15.5.5 差評商品分析 284
15.5.6 利用詞雲圖分析負面評價 284
15.6 關鍵技術 285
第16章 基於MySQL網站平台註冊用戶分析
16.1 概述 287
16.2 案例效果預覽 287
16.3 案例準備 288
16.4 業務流程 288
16.5 導入MySQL數據 288
16.5.1 導入MySQL數據 288
16.5.2 連線MySQL資料庫 289
16.6 實現過程 290
16.6.1 數據準備 290
16.6.2 數據檢測 290
16.6.3 年度註冊用戶分析 291
16.6.4 新註冊用戶分析 292
第17章 二手房房價分析與預測
17.1 概述 293
17.2 案例效果預覽 293
17.3 案例準備 294
17.4 業務流程 295
17.5 圖表工具模組 295
17.5.1 繪製餅形圖 295
17.5.2 繪製折線圖 296
17.5.3 繪製條形圖 296
17.6 實現過程 298
17.6.1 數據清洗 298
17.6.2 各區二手房均價分析 298
17.6.3 各區二手房數量及占比分析 299
17.6.4 全市二手房裝修程度分析 300
17.6.5 熱門戶型均價分析 301
17.6.6 二手房房價預測 301
第18章 Python實現客戶價值分析
18.1 概述 305
18.2 案例效果預覽 305
18.3 案例準備 305
18.4 業務流程 306
18.5 分析方法 306
18.5.1 RFM模型 307
18.5.2 聚類 307
18.6 實現過程 307
18.6.1 數據準備 307
18.6.2 數據抽取 308
18.6.3 數據探索分析 308
18.6.4 計算RFM值 308
18.6.5 數據轉換 309
18.6.6 客戶聚類 310
18.6.7 標記客戶類別 310
18.7 客戶價值結果分析 312
第19章 京東電商銷售數據分析與預測
19.1 概述 314
19.2 案例效果預覽 314
19.3 案例準備 314
19.4 業務流程 315
19.5 分析方法 315
19.6 實現過程 316
19.6.1 數據處理 316
19.6.2 日期數據統計並顯示 316
19.6.3 銷售收入分析 317
19.6.4 銷售收入與廣告費相關性分析 317
19.6.5 銷售收入預測 320
19.6.6 預測評分 321
強化篇
第20章 電視節目數據分析系統
20.1 系統需求分析 323
20.1.1 系統概述 323
20.1.2 功能性需求分析 323
20.2 系統設計 324
20.2.1 系統功能結構 324
20.2.2 系統業務流程 324
20.2.3 系統預覽 324
20.3 系統開發必備 327
20.3.1 系統開發環境 327
20.3.2 界面設計環境安裝與配置 327
20.4 主窗體設計 328
20.4.1 功能草圖 328
20.4.2 創建主窗體 328
20.4.3 工具列設計 329
20.4.4 其他控制項設計 331
20.4.5 ui檔案轉為py檔案 332
20.5 數據準備 333
20.6 功能代碼設計 333
20.6.1 查看數據情況模組 333
20.6.2 數據處理模組設計 334
20.6.3 數據分析及可視化模組 334
20.6.4 顯示主窗體模組 337
2.5.2 新建一個Jupyter Notebook檔案 22
2.5.3 在Jupyter Notebook中編寫“Hello World” 23
第3章 NumPy基礎:數組、矩陣計算
3.1 初識NumPy 25
3.1.1 NumPy概述 25
3.1.2 安裝NumPy模組 26
3.1.3 數組相關概念 27
3.2 創建數組 28
3.2.1 創建簡單的數組 28
【實例3.1】演示如何創建數組 28
【實例3.2】為數組指定數據類型 29
【實例3.3】複製數組 29
【實例3.4】修改數組的維數 30
3.2.2 以不同的方式創建數組 30
【實例3.5】創建指定維數和數據類型未初始化的數組 30
【實例3.6】創建指定維數(以0填充)的數組 30
【實例3.7】創建指定維數並以1填充的數組 31
【實例3.8】創建指定維數和數據類型並以指定值填充的數組 31
3.2.3 從數值範圍創建數組 31
【實例3.9】通過數值範圍創建數組 32
【實例3.10】創建馬拉松賽前訓練等差數列數組 33
【實例3.11】通過logspace()函式解決棋盤放置小麥的問題 33
3.2.4 生成隨機數組 34
【實例3.12】隨機生成0到1之間的數組 34
【實例3.13】隨機生成滿足常態分配的數組 35
【實例3.14】生成一定範圍內的隨機數組 35
【實例3.15】生成常態分配的隨機數組 36
3.2.5 從已有的數組中創建數組 36
【實例3.16】使用asarray()函式創建數組 37
【實例3.17】將字元串“mingrisoft”轉換為數組 37
【實例3.18】通過可疊代對象創建數組 38
【實例3.19】創建未初始化的數組 38
【實例3.20】創建以0填充的數組 39
【實例3.21】創建以1填充的數組 39
【實例3.22】創建以指定值“0.2”填充的數組 40
3.3 數組的基本操作 40
3.3.1 數據類型 40
3.3.2 數組運算 41
【實例3.23】數組加法運算 42
【實例3.24】數組的減法、乘法和除法運算 42
【實例3.25】數組的冪運算 43
【實例3.26】數組的比較運算 43
【實例3.27】數組的標量運算 44
3.3.3 數組的索引和切片 44
【實例3.28】獲取一維數組中的元素 44
【實例3.29】獲取二維數組中的元素 45
【實例3.30】實現簡單的數組切片操作 45
【實例3.31】常用的切片式索引操作 46
【實例3.32】二維數組的簡單索引操作 47
【實例3.33】二維數組的切片操作 47
3.3.4 數組重塑 48
【實例3.34】將一維數組重塑為二維數組 48
【實例3.35】將一行古詩轉換為4行5列的二維數組 48
【實例3.36】將2行3列的數組重塑為3行2列的數組 49
【實例3.37】將二維數組中的行列轉置 49
【實例3.38】轉換客戶銷售數據 50
3.3.5 數組的增、刪、改、查 51
【實例3.39】為數組增加數據 51
【實例3.40】刪除指定的數組元素 51
【實例3.41】修改指定的數組元素 52
【實例3.42】按指定條件查詢數組 52
3.4 NumPy矩陣的基本操作 53
3.4.1 創建矩陣 53
【實例3.43】創建簡單矩陣 53
【實例3.44】使用mat()函式創建常見的矩陣 54
3.4.2 矩陣運算 56
【實例3.45】矩陣加法運算 56
【實例3.46】矩陣減法、乘法和除法運算 56
【實例3.47】修改矩陣並進行乘法運算 57
【實例3.48】數組相乘與數組點乘比較 57
【實例3.49】矩陣元素之間的相乘運算 58
3.4.3 矩陣轉換 58
【實例3.50】使用T屬性實現矩陣轉置 58
【實例3.51】實現矩陣逆運算 58
3.5 NumPy常用統計分析函式 59
3.5.1 數學運算函式 59
【實例3.52】數組加、減、乘、除運算 60
【實例3.53】計算數組元素的倒數 60
【實例3.54】數組元素的冪運算 61
【實例3.55】對數組元素取余 61
【實例3.56】將數組中的一組數字四捨五入 62
【實例3.57】對數組元素向上取整 62
【實例3.58】對數組元素向下取整 62
【實例3.59】計算數組的正弦值、餘弦值和正切值 63
【實例3.60】將弧度轉換為角度 63
3.5.2 統計分析函式 64
【實例3.61】對數組元素求和、對數組元素按行和按列求和 64
【實例3.62】對數組元素求平均值、對數組元素按行和按列求平均值 65
【實例3.63】對數組元素求最大值和最小值 65
【實例3.64】計算電商各活動銷售的加權平均價 66
【實例3.65】計算電商活動價格的中位數 67
【實例3.66】求數組的方差和標準差 67
3.5.3 數組的排序 67
【實例3.67】對數組元素排序 68
【實例3.68】對數組元素升序排序 68
【實例3.69】通過排序解決成績相同學生的錄取問題 69
3.6 綜合案例——NumPy用於圖像灰度處理 69
3.7 實戰練習 70
第4章 Pandas入門
4.1 初識Pandas 72
4.1.1 Pandas概述 72
4.1.2 安裝Pandas 73
4.2 Pandas家族成員 74
4.2.1 Series對象 75
【實例4.1】創建一列數據 75
【實例4.2】創建一列“物理”成績 76
4.2.2 DataFrame對象 76
【實例4.3】通過列表創建成績表 77
【實例4.4】通過字典創建成績表 78
4.3 索引 78
4.3.1 什麼是索引 78
【實例4.5】設定索引 78
4.3.2 索引的作用 79
4.3.3 Series對象的索引 79
【實例4.6】手動設定索引 79
【實例4.7】重新設定物理成績的索引 80
【實例4.8】向前和向後填充數據 81
【實例4.9】通過位置索引獲取學生物理成績 81
【實例4.10】通過標籤索引獲取學生物理成績 81
【實例4.11】通過標籤切片獲取數據 82
【實例4.12】通過位置切片獲取數據 82
4.3.4 DataFrame對象的索引 83
【實例4.13】設定“姓名”為索引 83
【實例4.14】重新為“學生成績表”設定索引 84
【實例4.15】刪除數據後索引重置 85
4.4 綜合案例——構建身體數據並計算體質指數 85
4.5 實戰練習 86
第5章 數據讀取與處理
5.1 數據讀取與寫入 87
5.1.1 讀取與寫入Excel檔案 87
【實例5.1】讀取Excel檔案 89
【實例5.2】讀取指定Sheet頁中的數據 90
【實例5.3】讀取Excel檔案並指定行索引 91
【實例5.4】讀取Excel檔案中的第1列數據 91
【實例5.5】將數據寫入Excel檔案中 92
5.1.2 讀取與寫入CSV檔案 93
【實例5.6】讀取CSV檔案 94
5.1.3 讀取文本檔案 95
【實例5.7】讀取文本檔案 95
5.1.4 讀取HTML網頁 96
【實例5.8】Pandas也可以實現的簡單爬蟲 97
5.2 讀取資料庫中的數據 98
5.2.1 讀取MySQL資料庫中的數據 98
【實例5.9】讀取MySQL資料庫中的數據 100
5.2.2 讀取MongoDB資料庫中的數據 100
【實例5.10】讀取MongoDB資料庫中的數據 101
5.3 數據抽取 103
5.3.1 按行抽取數據 104
【實例5.11】抽取一行學生成績數據 104
5.3.2 抽取多行數據 104
【實例5.12】抽取多行學生成績數據 104
【實例5.13】抽取多個連續的學生成績數據 105
5.3.3 抽取指定列數據 105
【實例5.14】抽取學生的“語文”和“數學”成績 105
【實例5.15】抽取指定學科的成績 106
5.3.4 抽取指定的行、列數據 106
【實例5.16】抽取指定學科和指定學生的成績 107
5.4 數據的增、刪、改、查 107
5.4.1 增加數據 108
【實例5.17】增加一列“物理”成績 108
【實例5.18】使用loc屬性增加一列“物理”成績 108
【實例5.19】在第一列後面插入“物理”成績 108
【實例5.20】在成績表中增加一行數據 109
【實例5.21】在成績表中增加多行數據 109
5.4.2 刪除數據 109
【實例5.22】刪除學生成績數據 110
【實例5.23】刪除符合條件的學生成績數據 110
5.4.3 修改數據 110
【實例5.24】修改“數學”的列名 110
【實例5.25】修改多個學科的列名 111
【實例5.26】將行標題統一修改為數字編號 111
【實例5.27】修改學生成績數據 111
5.4.4 查詢數據 112
【實例5.28】通過邏輯運算符查詢數據 112
【實例5.29】通過複合運算符查詢數據 113
【實例5.30】使用query()方法簡化查詢代碼 113
【實例5.31】使用isin()方法查詢數據 113
【實例5.32】查詢女生的學習成績數據 114
【實例5.33】使用between()方法查詢數據 115
5.5 數據排序與排名 115
5.5.1 數據排序 115
【實例5.34】按“銷量”降序排序 116
【實例5.35】按照“圖書名稱”和“銷量”降序排序 117
【實例5.36】對分組統計數據進行排序 117
【實例5.37】按行數據排序 118
5.5.2 數據排名 118
【實例5.38】對產品銷量按順序進行排名 119
【實例5.39】對產品銷量進行平均排名 119
5.6 綜合案例——電商產品轉化率分析 120
5.7 實戰練習 121
第6章 數據清洗
6.1 處理缺失值 122
6.1.1 什麼是缺失值 122
6.1.2 查看缺失值 123
【實例6.1】查看數據概況 123
【實例6.2】判斷數據是否存在缺失值 123
6.1.3 處理缺失值 124
【實例6.3】將NaN填充為0 125
6.2 處理重複值 125
【實例6.4】處理淘寶電商銷售數據中的重複數據 125
6.3 異常值的檢測與處理 126
6.4 字元串操作 126
6.4.1 字元串對象方法 127
【實例6.5】字元串大小寫轉換 127
【實例6.6】去掉字元串中的空格 128
6.4.2 字元串替換方法 129
【實例6.7】使用replace()方法替換數據中指定的字元 129
【實例6.8】使用replace()方法替換標題中指定的字元 129
6.4.3 數據切分方法 130
【實例6.9】使用split()方法切分地址 130
6.4.4 字元串判斷方法 131
【實例6.10】使用contains()方法篩選數據並歸類 131
6.5 數據轉換 132
6.5.1 使用字典映射進行數據轉換 132
【實例6.11】使用map()函式將數據中的性別轉換為數字 132
6.5.2 數據分割 132
【實例6.12】分割成績數據並標記為“優秀”“良好”“一般” 133
6.5.3 分類數據數位化 134
【實例6.13】將分類數據轉換為數字 134
6.6 綜合案例——缺失值比例分析 135
6.7 實戰練習 135
第7章 數據計算與分組統計
7.1 數據計算 136
7.1.1 求和 136
【實例7.1】計算語文、數學和英語三科的總成績 137
7.1.2 求均值 137
【實例7.2】計算語文、數學和英語各科成績的平均分 137
7.1.3 求最大值 138
【實例7.3】計算語文、數學和英語各科成績的最高分 138
7.1.4 求最小值 138
【實例7.4】計算語文、數學和英語各科成績的最低分 139
7.1.5 求中位數 139
【實例7.5】計算學生各科成績的中位數1 140
【實例7.6】計算學生各科成績的中位數2 140
7.1.6 求眾數 140
【實例7.7】計算學生各科成績的眾數 141
7.1.7 求方差 141
【實例7.8】通過方差判斷誰的物理成績更穩定 142
7.1.8 標準差 142
【實例7.9】計算各科成績的標準差 143
7.1.9 求分位數 143
【實例7.10】通過分位數確定被淘汰的35%的學生 143
【實例7.11】計算日期、時間和時間增量數據的分位數 144
7.2 數據格式化 144
7.2.1 設定小數位數 145
【實例7.12】四捨五入保留指定的小數位數 145
7.2.2 設定百分比 146
【實例7.13】將指定數據格式化為百分比數據 146
7.2.3 設定千位分隔設定 146
【實例7.14】將金額格式化為帶千位分隔設定的數據 147
7.3 數據分組統計 147
7.3.1 分組統計函式groupby() 147
【實例7.15】根據“一級分類”列統計訂單數據 148
【實例7.16】根據“一級分類”列和“二級分類”列統計訂單數據 148
【實例7.17】統計各程式語言的7天點擊量 148
7.3.2 對分組數據進行疊代 149
【實例7.18】疊代“一級分類”的訂單數據 149
【實例7.19】疊代“一級分類”和“二級分類”的訂單數據 150
7.3.3 對分組的某列或多列使用聚合函式 150
【實例7.20】對分組統計結果使用聚合函式 150
【實例7.21】針對不同的列使用不同的聚合函式 150
【實例7.22】通過自定義函式實現分組統計 151
7.3.4 通過字典和Series對象進行分組統計 151
【實例7.23】通過字典分組統計“北上廣”銷量 151
【實例7.24】通過Series對象分組統計“北上廣”銷量 152
7.4 數據移位 153
【實例7.25】統計學生英語周測成績的升降情況 153
7.5 數據合併 154
7.5.1 merge()方法 154
【實例7.26】合併學生成績表 155
【實例7.27】通過索引合併數據 155
【實例7.28】對合併數據去重 156
【實例7.29】根據共有列進行合併數據 156
【實例7.30】合併數據並相互補全 157
7.5.2 concat()方法 157
7.6 數據透視表 159
7.6.1 pivot()方法 159
【實例7.31】數據透視表按年份統計城市GDP 160
7.6.2 pivot_table()方法 160
【實例7.32】數據透視表統計各部門男、女生
人數 160
7.7 綜合案例——商品月銷量對比分析 161
7.8 實戰練習 162
第8章 日期處理與時間序列
8.1 日期數據處理 163
8.1.1 DataFrame的日期數據轉換 163
【實例8.1】將各種日期字元串轉換為指定的日期格式 164
【實例8.2】將一組數據組合為日期數據 164
8.1.2 dt對象的使用 165
【實例8.3】獲取日期中的年、月、日、星期數等 165
8.1.3 獲取日期區間的數據 165
【實例8.4】獲取指定日期區間的訂單數據 166
8.1.4 按不同時期統計並顯示數據 166
【實例8.5】從日期中獲取不同的時期 168
8.2 日期範圍、頻率和移位 169
8.2.1 生成日期範圍 169
【實例8.6】按頻率生成時間段 169
【實例8.7】按複合頻率生成時間段 171
8.2.2 日期頻率轉換 171
【實例8.8】將按天的頻率轉換為按5小時的頻率 171
8.2.3 移位日期 172
【實例8.9】查看日期向前和向後分別移動兩次後的數據 172
8.3 時間區間與頻率轉換 173
8.3.1 創建時間區間 173
【實例8.10】使用Period類創建不同的時間區間 173
【實例8.11】使用period_range()函式創建時間區間 174
8.3.2 頻率轉換 175
【實例8.12】時間區間頻率轉換 175
8.4 重採樣與頻率轉換 175
8.4.1 重採樣 175
【實例8.13】將1分鐘的時間序列轉換為3分鐘的時間序列 176
8.4.2 降採樣處理 177
【實例8.14】按周統計銷售數據 177
8.4.3 升採樣處理 178
【實例8.15】每6小時統計一次數據 178
8.5 移動視窗函式 178
8.5.1 時間序列數據匯總 178
【實例8.16】統計數據的open、high、low和close值 179
8.5.2 移動視窗數據計算 179
【實例8.17】創建淘寶每日銷量數據 180
【實例8.18】在實例8.17的基礎上,使用rolling()函式計算每3天的均值 180
【實例8.19】用當天的數據代表視窗數據 180
8.6 綜合案例——股票行情數據分析 181
8.7 實戰練習 182
第9章 可視化數據分析圖表
9.1 數據分析圖表的作用 183
9.2 如何選擇適合的圖表類型 184
9.3 數據分析圖表的基本組成 184
9.4 Matplotlib概述 185
9.4.1 Matplotlib簡介 185
9.4.2 安裝Matplotlib 188
9.4.3 Matplotlib圖表之初體驗 189
【實例9.1】繪製第一張圖表 189
【實例9.2】繪製散點圖 189
9.5 圖表的常用設定 190
9.5.1 基本繪圖函式plot () 190
【實例9.3】繪製簡單折線圖 190
【實例9.4】繪製體溫折線圖 190
9.5.2 設定畫布 192
【實例9.5】自定義畫布 193
9.5.3 設定坐標軸 193
【實例9.6】為體溫折線圖設定標題 193
【實例9.7】為體溫折線圖設定刻度1 194
【實例9.8】為體溫折線圖設定刻度2 194
【實例9.9】為體溫折線圖設定坐標軸範圍 195
9.5.4 添加文本標籤 196
【實例9.10】為體溫折線圖添加基礎體溫文本標籤 196
9.5.5 設定標題和圖例 196
9.5.6 添加注釋 198
【實例9.11】為圖表添加注釋 198
9.5.7 調整圖表與畫布邊緣的間距 199
9.5.8 設定坐標軸 200
9.6 常用圖表的繪製 200
9.6.1 繪製折線圖 201
【實例9.12】繪製學生語文、數學、英語各科成績分析圖 201
9.6.2 繪製柱形圖 201
【實例9.13】繪製簡單的柱形圖 202
【實例9.14】繪製2013—2019年線上圖書銷售額
分析圖 202
【實例9.15】繪製各平台圖書銷售額分析圖 203
9.6.3 繪製直方圖 204
【實例9.16】繪製簡單直方圖 205
【實例9.17】利用直方圖分析學生數學成績分布情況 205
9.6.4 繪製餅形圖 206
【實例9.18】繪製簡單餅形圖 206
【實例9.19】通過餅形圖分析各省、市、自治區銷量占比情況 207
【實例9.20】繪製分裂餅形圖 207
【實例9.21】利用環形圖分析各省、市、自治區銷量占比情況 208
【實例9.22】利用內嵌環形圖分析各省、市、自治區銷量占比情況 209
9.6.5 繪製散點圖 209
【實例9.23】繪製簡單散點圖 210
【實例9.24】利用散點圖分析銷售收入與廣告費的相關性 210
9.6.6 繪製面積圖 211
【實例9.25】繪製簡單面積圖 211
【實例9.26】利用面積圖分析線上圖書銷售情況 212
【實例9.27】利用堆疊面積圖分析各平台圖書銷售情況 212
9.6.7 繪製熱力圖 213
【實例9.28】繪製簡單熱力圖 213
【實例9.29】利用熱力圖對比分析學生各科成績 213
9.6.8 繪製箱形圖 214
【實例9.30】繪製簡單箱形圖 215
【實例9.31】繪製多組數據的箱形圖 215
【實例9.32】通過箱形圖判斷異常值 216
9.6.9 繪製3D圖表 217
【實例9.33】繪製3D柱形圖 217
【實例9.34】繪製3D曲面圖 218
9.6.10 繪製多個子圖表 218
【實例9.35】使用subplot()函式繪製多子圖表的空圖表 219
【實例9.36】繪製包含多個子圖表的圖表 219
【實例9.37】使用subplots()函式繪製包含多子圖表的空圖表 221
【實例9.38】使用subplots()函式繪製多子圖表 221
【實例9.39】使用add_subplot()函式繪製多子圖表 222
9.6.11 圖表的保存 222
9.7 Seaborn圖表 223
9.7.1 Seaborn圖表概述 223
9.7.2 Seaborn圖表之初體驗 224
【實例9.40】繪製簡單的柱形圖 224
9.7.3 Seaborn圖表的基本設定 225
9.7.4 常用圖表的繪製 226
【實例9.41】使用relplot()函式繪製學生語文成績折線圖 226
【實例9.42】使用lineplot()函式繪製學生語文成績折線圖 226
【實例9.43】利用多折線圖分析學生各科成績 226
【實例9.44】繪製簡單直方圖 227
【實例9.45】利用條形圖分析學生各科成績 228
【實例9.46】利用散點圖分析“小費” 228
【實例9.47】利用線性回歸圖表分析“小費” 230
【實例9.48】利用箱形圖分析“小費”異常數據 231
【實例9.49】利用核密度圖分析“鳶尾花” 232
【實例9.50】利用提琴圖分析“小費” 232
9.8 綜合案例——京東電商單品銷量同比增長情況分析 233
9.9 實戰練習 235
第10章 機器學習Scikit-Learn
10.1 Scikit-Learn簡介 236
10.2 安裝Scikit-Learn 236
10.3 線性模型 237
10.3.1 最小二乘法回歸 238
【實例10.1】智慧型預測房價 239
10.3.2 嶺回歸 239
【實例10.2】使用嶺回歸函式實現智慧型預測房價 240
10.4 支持向量機 240
【實例10.3】“波士頓房價”預測 241
10.5 聚類 242
10.5.1 什麼是聚類 242
10.5.2 聚類算法 243
10.5.3 聚類模組 243
【實例10.4】對一組數據進行聚類 244
10.5.4 聚類數據生成器 245
【實例10.5】生成用於聚類的測試數據 245
10.6 綜合案例——預測考試成績 246
10.7 實戰練習 247
實戰篇
第11章 處理大型數據集
11.1 概述 249
11.2 案例效果預覽 250
11.3 案例準備 251
11.4 業務流程 251
11.5 實現過程 251
11.5.1 數據準備 251
11.5.2 數據分塊 251
11.5.3 查看與處理數據 252
11.5.4 保存分塊數據 253
11.5.5 合併分塊數據 253
11.6 關鍵技術 253
第12章 快速批量合併和處理Excel
12.1 概述 255
12.2 案例效果預覽 255
12.3 案例準備 258
12.4 業務流程 258
12.5 實現過程 258
12.5.1 數據準備 258
12.5.2 將多個Excel合併為一個Excel 258
12.5.3 合併指定的Excel的指定列到一個Excel 259
12.5.4 合併指定的Excel到一個Excel的多個Sheet 260
12.5.5 批量合併資料夾中所有的Excel到一個Excel的多個Sheet 260
12.6 關鍵技術 261
第13章 爬取分析NBA球員薪資數據
13.1 概述 263
13.2 案例效果預覽 263
13.3 案例準備 264
13.4 業務流程 264
13.5 實現過程 265
13.5.1 數據準備 265
13.5.2 確定網頁格式 265
13.5.3 爬取數據 265
13.5.4 清洗數據 267
13.5.5 繪製水平柱形圖分析湖人隊薪資狀況 268
13.6 關鍵技術 268
第14章 獲取和分析股票行情數據
14.1 概述 270
14.2 案例效果預覽 270
14.3 案例準備 272
14.4 業務流程 272
14.5 實現過程 272
14.5.1 安裝第三方模組 272
14.5.2 獲取股票歷史數據 273
14.5.3 數據歸一化處理 274
14.5.4 可視化股票走勢圖 275
14.5.5 股票收盤價格走勢圖 275
14.5.6 股票漲跌情況分析圖 275
14.5.7 股票k線走勢圖 276
14.6 關鍵技術 277
第15章 基於文本數據的京東商家評論數據分析
15.1 概述 280
15.2 案例效果預覽 280
15.3 案例準備 281
15.4 業務流程 281
15.5 實現過程 281
15.5.1 安裝第三方模組 281
15.5.2 數據準備 282
15.5.3 數據清洗 282
15.5.4 總體評價狀況分析 283
15.5.5 差評商品分析 284
15.5.6 利用詞雲圖分析負面評價 284
15.6 關鍵技術 285
第16章 基於MySQL網站平台註冊用戶分析
16.1 概述 287
16.2 案例效果預覽 287
16.3 案例準備 288
16.4 業務流程 288
16.5 導入MySQL數據 288
16.5.1 導入MySQL數據 288
16.5.2 連線MySQL資料庫 289
16.6 實現過程 290
16.6.1 數據準備 290
16.6.2 數據檢測 290
16.6.3 年度註冊用戶分析 291
16.6.4 新註冊用戶分析 292
第17章 二手房房價分析與預測
17.1 概述 293
17.2 案例效果預覽 293
17.3 案例準備 294
17.4 業務流程 295
17.5 圖表工具模組 295
17.5.1 繪製餅形圖 295
17.5.2 繪製折線圖 296
17.5.3 繪製條形圖 296
17.6 實現過程 298
17.6.1 數據清洗 298
17.6.2 各區二手房均價分析 298
17.6.3 各區二手房數量及占比分析 299
17.6.4 全市二手房裝修程度分析 300
17.6.5 熱門戶型均價分析 301
17.6.6 二手房房價預測 301
第18章 Python實現客戶價值分析
18.1 概述 305
18.2 案例效果預覽 305
18.3 案例準備 305
18.4 業務流程 306
18.5 分析方法 306
18.5.1 RFM模型 307
18.5.2 聚類 307
18.6 實現過程 307
18.6.1 數據準備 307
18.6.2 數據抽取 308
18.6.3 數據探索分析 308
18.6.4 計算RFM值 308
18.6.5 數據轉換 309
18.6.6 客戶聚類 310
18.6.7 標記客戶類別 310
18.7 客戶價值結果分析 312
第19章 京東電商銷售數據分析與預測
19.1 概述 314
19.2 案例效果預覽 314
19.3 案例準備 314
19.4 業務流程 315
19.5 分析方法 315
19.6 實現過程 316
19.6.1 數據處理 316
19.6.2 日期數據統計並顯示 316
19.6.3 銷售收入分析 317
19.6.4 銷售收入與廣告費相關性分析 317
19.6.5 銷售收入預測 320
19.6.6 預測評分 321
強化篇
第20章 電視節目數據分析系統
20.1 系統需求分析 323
20.1.1 系統概述 323
20.1.2 功能性需求分析 323
20.2 系統設計 324
20.2.1 系統功能結構 324
20.2.2 系統業務流程 324
20.2.3 系統預覽 324
20.3 系統開發必備 327
20.3.1 系統開發環境 327
20.3.2 界面設計環境安裝與配置 327
20.4 主窗體設計 328
20.4.1 功能草圖 328
20.4.2 創建主窗體 328
20.4.3 工具列設計 329
20.4.4 其他控制項設計 331
20.4.5 ui檔案轉為py檔案 332
20.5 數據準備 333
20.6 功能代碼設計 333
20.6.1 查看數據情況模組 333
20.6.2 數據處理模組設計 334
20.6.3 數據分析及可視化模組 334
20.6.4 顯示主窗體模組 337

相關詞條

熱門詞條

聯絡我們