《對比Excel,輕松學習Python數據分析》目錄
入門篇
第1 章 數據分析基礎 . 2
1.1 數據分析是什麼 2
1.2 為什麼要做數據分析 2
1.2.1 現狀分析 . 3
1.2.2 原因分析 . 3
1.2.3 預測分析 . 3
1.3 數據分析究竟在分析什麼 4
1.3.1 總體概覽指標 . 4
1.3.2 對比性指標 . 4
1.3.3 集中趨勢指標 . 4
1.3.4 離散程度指標 . 5
1.3.5 相關性指標 . 5
1.3.6 相關關繫與因果關繫 . 6
1.4 數據分析的常規流程 6
1.4.1 熟悉工具 . 6
1.4.2 明確目的 . 7
1.4.3 獲取數據 . 7
1.4.4 熟悉數據 . 7
1.4.5 處理數據 . 7
1.4.6 分析數據 . 8
1.4.7 得出結論 . 8
1.4.8 驗證結論 . 8
1.4.9 展示結論 . 8
1.5 數據分析工具:Excel 與Python .. 8
實踐篇
第2 章 熟悉鍋——Python 基礎知識 . 12
2.1 Python 是什麼 .. 12
2.2 Python 的下載與安裝 .. 13
2.2.1 安裝教程 ... 13
2.2.2 IDE 與IDLE . 17
2.3 介紹Jupyter Notebook 17
2.3.1 新建Jupyter Notebook 文件 17
2.3.2 運行你的段代碼 ... 19
2.3.3 重命名Jupyter Notebook 文件 19
2.3.4 保存Jupyter Notebook 文件 19
2.3.5 導入本地Jupyter Notebook 文件 20
2.3.6 Jupyter Notebook 與Markdown ... 21
2.3.7 為Jupyter Notebook 添加目錄 21
2.4 基本概念 .. 26
2.4.1 數 ... 26
2.4.2 變量 ... 26
2.4.3 標識符 ... 27
2.4.4 數據類型 ... 28
2.4.5 輸出與輸出格式設置 ... 28
2.4.6 縮進與注釋 ... 29
2.5 字符串 .. 30
2.5.1 字符串的概念 ... 30
2.5.2 字符串的連接 ... 30
2.5.3 字符串的復制 ... 30
2.5.4 獲取字符串的長度 ... 30
2.5.5 字符串查找 ... 31
2.5.6 字符串索引 ... 31
2.5.7 字符串分隔 ... 32
2.5.8 移除字符 ... 32
2.6 數據結構——列表 .. 33
2.6.1 列表的概念 ... 33
2.6.2 新建一個列表 ... 33
2.6.3 列表的復制 ... 34
2.6.4 列表的合並 ... 34
2.6.5 向列表中素 ... 34
2.6.6 獲取列表中值出現的次數 ... 35
2.6.7 獲取列表中值出現的位置 ... 35
2.6.8 獲取列表中指定位置的值 ... 36
2.6.9 刪除列表中的值 ... 36
2.6.10 對列表中的值進行排序 . 37
2.7 數據結構——字典 .. 37
2.7.1 字典的概念 ... 37
2.7.2 新建一個字典 ... 37
2.7.3 字典的keys()、values()和items()方法 ... 37
2.8 數據結構—&mda組 .. 38
2.8組的概念 ... 38
2.8.2 新組 ... 38
2.8.3組的長度 ... 38
2.8.4素 ... 39
2.8組與列表相互轉換 ... 39
2.8.6 zip()函數 ... 39
2.9 運算符 .. 40
2.9.1 算術運算符 ... 40
2.9.2 比較運算符 ... 40
2.9.3 邏輯運算符 ... 41
2.10 循環語句 41
2.10.1 for 循環 ... 41
2.10.2 while 循環 ... 42
2.11 條件語句 43
2.11.1 if 語句 . 43
2.11.2 else 語句 .. 44
2.11.3 elif 語句 .. 45
2.12 函數 46
2.12.1 普通函數 . 47
2.12.2 匿名函數 . 48
2.13 高級特性 49
2.13.1 列表生成式 . 49
2.13.2 map 函數 . 50
2.14 模塊 50
第3 章 Pandas 數據結構 . 51
3.1 Series 數據結構 ... 51
3.1.1 Series 是什麼 51
3.1.2 創建一個Series 52
3.1.3 利用index 方法獲取Series 的索引 53
3.1.4 利用values 方法獲取Series 的值 ... 53
3.2 DataFrame 表格型數據結構 ... 53
3.2.1 DataFrame 是什麼 53
3.2.2 創建一個DataFrame 54
3.2.3 獲取DataFrame 的行、列索引 ... 56
3.2.4 獲取DataFrame 的值 ... 56
第4 章 準備食材——獲取數據源 .. 57
4.1 導入外部數據 .. 57
4.1.1 導入.xlsx 文件 .. 57
4.1.2 導入.csv 文件 ... 60
4.1.3 導入.txt 文件 63
4.1.4 導入sql 文件 65
4.2 新建數據 .. 67
4.3 熟悉數據 .. 67
4.3.1 利用head 預覽前幾行 . 67
4.3.2 利用shape 獲取數據表的大小 68
4.3.3 利用info 獲取數據類型 .. 69
4.3.4 利用describe 獲取數值分布情況 71
第5 章 淘米洗菜——數據預處理 .. 73
5.1 缺失值處理 .. 73
5.1.1 缺失值查看 ... 73
5.1.2 缺失值刪除 ... 75
5.1.3 缺失值填充 ... 77
5.2 重復值處理 .. 78
5.3 異常值的檢測與處理 .. 81
5.3.1 異常值檢測 ... 81
5.3.2 異常值處理 ... 82
5.4 數據類型轉換 .. 83
5.4.1 數據類型 ... 83
5.4.2 類型轉換 ... 84
5.5 索引設置 .. 86
5.5.1 為無索引表添加索引 ... 86
5.5.2 重新設置索引 ... 87
5.5.3 重命名索引 ... 88
5.5.4 重置索引 ... 89
第6 章 菜品挑選——數據選擇 . 91
6.1 列選擇 .. 91
6.1.1 選擇某一列/某幾列 .. 91
6.1.2 選擇連續的某幾列 ... 92
6.2 行選擇 .. 93
6.2.1 選擇某一行/某幾行 .. 93
6.2.2 選擇連續的某幾行 ... 94
6.2.3 選擇滿足條件的行 ... 95
6.3 行列同時選擇 .. 96
6.3.1 普通索引 普通索引選擇指定的行和列 . 97
6.3.2 位置索引 位置索引選擇指定的行和列 . 97
6.3.3 布爾索引 普通索引選擇指定的行和列 . 98
6.3.4 切片索引 切片索引選擇指定的行和列 . 98
6.3.5 切片索引 普通索引選擇指定的行和列 . 99
第7 章 切配菜品——數值操作 ... 100
7.1 數值替換 100
7.1.1 一對一替換 . 100
7.1.2 多對一替換 . 102
7.1.3 多對多替換 . 103
7.2 數值排序 104
7.2.1 按照一列數值進行排序 . 104
7.2.2 按照有缺失值的列進行排序 . 106
7.2.3 按照多列數值進行排序 . 106
7.3 數值排名 108
7.4 數值刪除 . 110
7.4.1 刪除列 .. 110
7.4.2 刪除行 .. 111
7.4.3 刪除特定行 .. 112
7.5 數值計數 . 113
7.6 值獲取 . 114
7.7 數值查找 . 115
7.8 區間切分 . 116
7.9 插入新的行或列 . 119
7.10 行列互換 .. 120
7.11 索引重塑 .. 121
7.12 長寬表轉換 .. 122
7.12.1 寬表轉換為長表 ... 123
7.12.2 長表轉換為寬表 ... 125
7.13 apply()與applymap()函數 ... 126
第8 章 開始烹調——數據運算 ... 127
8.1 算術運算 127
8.2 比較運算 128
8.3 彙總運算 129
8.3.1 count 非空值計數 ... 129
8.3.2 sum 求和 . 130
8.3.3 mean 求均值 ... 130
8.3.4 max 求值 . 131
8.3.5 min 求小值 . 132
8.3.6 median 求中位數 132
8.3.7 mode 求眾數 ... 133
8.3.8 var 求方差 ... 134
8.3.9 std 求標準差 ... 134
8.3.10 quantile 求分位數 . 135
8.4 相關性運算 136
第9 章 炒菜計時器——時間序列 138
9.1 獲取當前時刻的時間 138
9.1.1 返回當前時刻的日期和時間 . 138
9.1.2 分別返回當前時刻的年、月、日 . 138
9.1.3 返回當前時刻的周數 . 139
9.2 指定日期和時間的格式 140
9.3 字符串和時間格式相互轉換 141
9.3.1 將時間格式轉換為字符串格式 . 141
9.3.2 將字符串格式轉換為時間格式 . 141
9.4 時間索引 142
9.5 時間運算 145
9.5.1 兩個時間之差 . 145
9.5.2 時間偏移 . 145
第10 章 菜品分類——數據分組/數據透視表 .. 148
10.1 數據分組 .. 148
10.1.1 分組鍵是列名 ... 150
10.1.2 分組鍵是Series 151
10.1.3 神奇的aggregate 方法 . 152
10.1.4 對分組後的結果重置索引 ... 153
10.2 數據透視表 .. 154
第11 章 水果拼盤——多表拼接 . 158
11.1 表的橫向拼接 .. 158
11.1.1 連接表的類型 ... 158
11.1.2 連接鍵的類型 ... 160
11.1.3 連接方式 ... 163
11.1.4 重復列名處理 ... 165
11.2 表的縱向拼接 .. 165
11.2.1 普通合並 ... 166
11.2.2 索引設置 ... 167
11.2.3 重疊數據合並 ... 167
第12 章 盛菜裝盤——結果導出 . 169
12.1 導出為.xlsx 文件 . 169
12.1.1 設置文件導出路徑 ... 170
12.1.2 設置Sheet 名稱 170
12.1.3 設置索引 ... 170
12.1.4 設置要導出的列 ... 171
12.1.5 設置編碼格式 ... 171
12.1.6 缺失值處理 ... 172
12.1.7 無窮值處理 ... 172
12.2 導出為.csv 文件 ... 173
12.2.1 設置文件導出路徑 ... 173
12.2.2 設置索引 ... 174
12.2.3 設置要導出的列 ... 174
12.2.4 設置分隔符號 ... 174
12.2.5 缺失值處理 ... 174
12.2.6 設置編碼格式 ... 175
12.3 將文件導出到多個Sheet 175
第13 章 菜品擺放——數據可視化 .. 176
13.1 數據可視化是什麼 .. 176
13.2 數據可視化的基本流程 .. 176
13.2.1 整理數據 ... 176
13.2.2 明確目的 ... 177
13.2.3 尋找合適的表現形式 ... 177
13.3 圖表的基素 .. 177
13.4 Excel 與Python 可視化 ... 179
13.5 建立畫布和坐標繫 .. 179
13.5.1 建立畫布 ... 179
13.5.2 用add_subplot 函數建立坐標繫 . 180
13.5.3 用plt.subplot2grid 函數建立坐標繫 182
13.5.4 用plt.subplot 函數建立坐標繫 183
13.5.5 用plt.subplots 函數建立坐標繫 .. 184
13.5.6 幾種創建坐標繫方法的區別 ... 185
13.6 設置坐標軸 .. 185
13.6.1 設置坐標軸的標題 ... 185
13.6.2 設置坐標軸的刻度 ... 187
13.6.3 設置坐標軸的範圍 ... 190
13.6.4 坐標軸的軸顯示設置 ... 191
13.7 其他圖表格式的設置 .. 191
13.7.1 網格線設置 ... 191
13.7.2 設置圖例 ... 193
13.7.3 圖表標題設置 ... 195
13.7.4 設置數據標簽 ... 197
13.7.5 圖表注釋 ... 198
13.7.6 數據表 ... 199
13.8 繪制常用圖表 .. 201
13.8.1 繪制折線圖 ... 201
13.8.2 繪制柱形圖 ... 204
13.8.3 繪制條形圖 ... 208
13.8.4 繪制散點圖 ... 209
13.8.5 繪制氣泡圖 211
13.8.6 繪制面積圖 ... 212
13.8.7 繪制樹地圖 ... 213
13.8.8 繪制雷達圖 ... 215
13.8.9 繪制箱形圖 ... 217
13.8.10 繪制餅圖 . 218
13.8.11 繪制圓環圖 . 220
13.8.12 繪制熱力圖 . 221
13.8.13 繪制水平線和垂直線 . 223
13.9 繪制組合圖表 .. 224
13.9.1 折線圖 折線圖 224
13.9.2 折線圖 柱形圖 225
13.10 繪制雙坐標軸圖表 226
13.10.1 繪制雙y 軸圖表 . 227
13.10.2 繪制雙x 軸圖表 . 228
13.11 繪圖樣式設置 228
進階篇
第14 章 典型數據分析案例 234
14.1 利用Python 實現報表自動化 . 234
14.1.1 為什麼要進行報表自動化 ... 234
14.1.2 什麼樣的報表適合自動化 ... 234
14.1.3 如何實現報表自動化 ... 235
14.2 自動發送電子郵件 .. 239
14.3 假如你是某連鎖超市的數據分析師 .. 241
14.3.1 哪些類別的商品比較暢銷 ... 242
14.3.2 哪些商品比較暢銷 ... 242
14.3.3 不同門店的銷售額占比 ... 243
14.3.4 哪些時間段是超市的客流高峰期 ... 244
14.4 假如你是某銀行的數據分析師 .. 245
14.4.1 是不是收入越高的人壞賬率越低 ... 246
14.4.2 年齡和壞賬率有什麼關繫 ... 247
14.4.3 家庭人口數量和壞賬率有什麼關繫 ... 248
第15 章 NumPy 數組 . 250
15.1 NumPy 簡介 . 250
15.2 NumPy 數組的生成 . 250
15.2.1 生成一般數組 ... 251
15.2.2 生成特殊類型數組 ... 251
15.2.3 生成隨機數組 ... 253
15.3 NumPy 數組的基本屬性 . 255
15.4 NumPy 數組的數據選取 . 256
15.4.1 一維數據選取 ... 256
15.4.2 多維數據選取 ... 257
15.5 NumPy 數組的數據預處理 . 259
15.5.1 NumPy 數組的類型轉換 .. 259
15.5.2 NumPy 數組的缺失值處理 .. 260
15.5.3 NumPy 數組的重復值處理 .. 260
15.6 NumPy 數組重塑 . 261
15.6.1 一維數組重塑 ... 261
15.6.2 多維數組重塑 ... 261
15.6.3 數組轉置 ... 262
15.7 NumPy 數組合並 . 262
15.7.1 橫向合並 ... 262
15.7.2 縱向合並 ... 263
15.8 常用數據分析函數 .. 264
15.8素級函數 ... 264
15.8.2 描述統計函數 ... 264
15.8.3 條件函數 ... 266
15.8.4 集合關繫 ... 266
《對比Excel,輕松學習SQL數據分析》目錄
入門篇
第1章 數據分析基礎介紹 2
1.1 數據分析是什麼 2
1.2 為什麼要進行數據分析 2
1.2.1 現狀分析 3
1.2.2 原因分析 3
1.2.3 預測分析 4
1.3 數據分析究竟在分析什麼 5
1.3.1 總體概覽指標 5
1.3.2 對比性指標 5
1.3.3 集中趨勢指標 6
1.3.4 離散程度指標 6
1.3.5 相關性指標 7
1.3.6 相關與因果 7
1.4 數據分析的常規分析流程7
1.4.1 熟悉工具8
1.4.2 明確目的 8
1.4.3 獲取數據 8
1.4.4 熟悉數據 8
1.4.5 處理數據 8
1.4.6 分析數據 9
1.4.7 得出結論 9
1.4.8 驗證結論 9
1.4.9 展現結論 9
1.5 數據分析工具 9
1.5.1 Excel 與SQL 9
1.5.2 SQL 與Python 10
知識篇
第2章 數據庫基礎知識 12
2.1 數據庫的發展及組成 12
2.1.1 數據庫的發展 12
2.1.2 數據庫的組成 . 13
2.2 SQL 是什麼 . 13
2.3 SQL 的基本功能 . 14
2.3.1 數據定義 . 15
2.3.2 數據操縱 . 15
2.3.3 數據控制 . 15
2.4 SQL 查詢的處理步驟 . 15
2.4.1 查詢分析 . 15
2.4.2 查詢檢查 . 15
2.4.3 查詢優化 . 16
2.4.4 查詢執行 . 16
2.5 不同數據庫的比較 . 16
第3章 數據庫工具準備 17
3.1 認識MySQL 官方網站 17
3.2 MySQL 的下載與安裝 . 19
3.2.1 基於Windows 的下載與安裝 19
3.2.2 基於macOS 的下載與安裝 . 27
3.3 DBeaver 的下載與安裝 33
3.3.1 基於Windows 的下載與安裝 33
3.3.2 基於macOS 的下載與安裝 . 38
3.4 DBeaver 使用說明 42
3.4.1 新建表結構 . 42
3.4.2 導入外部數據 . 44
3.4.3 代碼執行 . 46
3.4.4 導出結果數據 . 47
3.5 寫下行SQL 語句 49
第4章 數據源的獲取 50
4.1 外部數據 . 50
4.2 公司現有數據 . 50
4.3 新建數據 . 50
4.4 熟悉數據 . 50
4.4.1 了解數據庫信息 . 52
4.4.2 了解數據表信息 . 52
4.4.3 了解列信息 . 52
第5章 數據的獲取 54
5.1 獲取列 . 54
5.1.1 獲取全部列 . 55
5.1.2 獲取特定的列 . 55
5.2 獲取想要的行 . 56
5.2.1 獲取全部行 . 56
5.2.2 獲取前幾行 . 56
5.2.3 獲取滿足單一條件的行 . 57
5.2.4 獲取滿足多個條件的行 . 58
5.3 行列同時獲取 . 59
5.4 插入一列固定值 . 60
5.5 JSON 列解析 . 61
5.6 對結果進行排序 . 62
第6章 數據預處理 65
6.1 缺失值處理 . 65
6.2 重復值處理 . 68
6.3 數據類型轉換 . 70
6.4 重命名 . 72
第7章 數據運算 74
7.1 算術運算 . 74
7.2 比較運算 . 76
7.3 邏輯運算 . 78
7.4 數學運算 . 80
7.4.1 求值 . 80
7.4.2 求小整數值 . 81
7.4.3 求整數值 . 81
7.4.4 隨機數生成 . 81
7.4.5 小數點位數調整 . 83
7.4.6 正負判斷 . 83
7.5 字符串運算 . 84
7.5.1 字符串替換 . 84
7.5.2 字符串合並 . 85
7.5.3 字符串截取 . 86
7.5.4 字符串匹配 . 86
7.5.5 字符串計數 . 87
7.5.6 去除字符串空格 . 88
7.5.7 字符串重復 . 89
7.6 聚合運算 . 89
7.6.1 count()計數 . 89
7.6.2 sum()求和 90
7.6.3 avg()求平均值 90
7.6.4 max()求值 . 90
7.6.5 min()求小值 91
7.6.6 求方差 . 91
7.6.7 求標準差 . 92
7.6.8 聚合函數之間的運算 . 92
第8章 控制函數 94
8.1 if()函數 94
8.2 case when 函數 96
第9章 日期和時間函數 99
9.1 獲取當前時刻的數據 . 99
9.1.1 獲取當前時刻的日期和時間 . 99
9.1.2 獲取當前時刻的日期 . 99
9.1.3 獲取當前時刻的時間 . 100
9.1.4 獲取當前時刻所屬的周數 . 101
9.1.5 獲取當前時刻所屬的季度 . 102
9.2 日期和時間格式轉換 . 102
9.3 日期和時間運算 . 104
9.3.1 向後偏移日期和時間 . 104
9.3.2 向前偏移日期和時間 . 105
9.3.3 兩個日期之間做差 . 106
9.3.4 兩個日期之間的比較 . 107
第10章 數據分組與數據透視表 108
10.1 group by 的底層原理 108
10.2 對分組後的數據進行聚合運算 . 109
10.3 對聚合後的數據進行條件篩選 111
10.4 group_concat()函數 112
10.5 rollup. 113
10.6 數據透視表實現 115
第11章 窗口函數 . 117
11.1 什麼是窗口函數 117
11.2 聚合函數 over()函數 117
11.3 partition by 子句 . 118
11.4 order by 子句 . 120
11.5 序列函數 . 121
11.5.1 ntile()函數 . 121
11.5.2 row_number()函數 123
11.5.3 lag()和lead()函數 . 124
11.5.4 first_value()和last_value()函數 . 126
第12章 多表連接 127
12.1 表的橫向連接 . 127
12.1.1 表連接的方式 . 128
12.1.2 表連接的類型 . 132
12.1.3 多張表連接 . 134
12.2 表的縱向連接 . 135
12.3 橫向連接的底層原理 . 135
12.3.1 Simple Nested-Loop Join 136
12.3.2 Index Nested-Loop Join 136
12.3.3 Block Nested-Loop Join 137
第13章 子查詢 139
13.1 子查詢的概念 . 139
13.2 子查詢的分類 . 139
13.2.1 select 子查詢 . 140
13.2.2 from 子查詢 141
13.2.3 where 子查詢 142
13.3 with 建立臨時表 . 144
實戰篇
第14章 SQL中的其他話題 . 150
14.1 SQL 查詢的執行順序. 150
14.2 變量設置 . 152
14.3 分區表 . 153
14.4 寬表與窄表 . 154
14.5 全量表,增量表,快照表,拉鏈表,流水表 . 154
14.6 數據回溯 . 156
14.7 數據倉庫的基本分層 . 157
14.8 SQL 語句的代碼規範157
14.9 如何快速梳理數據庫邏輯 159
14.10 如何快速讀懂別人的代碼 160
14.11 編輯器 161
14.11.1 軟件安裝 161
14.11.2 常用功能設置 162
14.11.3 常用快捷鍵 166
14.12 創建表 167
14.12.1 創建一張表 167
14.12.2 向表中插入數據 168
14.12.3 修改表中的數據169
14.12.4 刪除表 169
第15章 SQL 數據分析實戰 170
15.1 查詢每個區域的用戶數 170
15.2 查詢每個區域的男女用戶數 171
15.3 查詢姓張的用戶數 171
15.4 篩選出id3~id5 的用戶 172
15.5 篩選出績效不達標的員工 172
15.6 篩選出姓張的且績效不達標的員工 173
15.7 查詢獲得銷售冠軍超過兩次的人 174
15.8 查詢某部門一年的月銷售額漲幅 175
15.9 查詢每個季度績效得分大於70 分的員工 175
15.10 刪除重復值 176
15.11 行列互換 177
15.12 多列比較 178
15.13 對成績進行分組179
15.14 周累計數據獲取 180
15.15 周環比數據獲取 181
15.16 查詢獲獎員工信息 182
15.17 計算用戶留存情況 183
15.18 篩選受歡迎的課程 185
15.19 篩選出每個年級受歡迎的三門課程 186
15.20 求累積和 187
15.21 獲取新增用戶數 189
15.22 獲取用戶首次購買時間 190
15.23 同時獲取用戶和訂單數據 191
15.24 隨機抽樣 192
15.25 獲取沉默用戶數 193
15.26 獲取新用戶的訂單數 193
15.27 獲取借款到期名單 194
15.28 獲取即將到期的借款信息 195
15.29 獲取歷史逾期借款信息 196
15.30 綜合實戰 196
第16章 SQL中常見的報錯 198
16.1 DBeaver 相關報錯 198
16.1.1 時區錯誤 198
16.1.2 Public Key Retrieval 199
16.1.3 connect error 200
16.1.4 加密方式錯誤 201
16.2 MySQL 配置相關報錯 202
16.2.1 MySQL 安裝失敗 202
16.2.2 MySQL 客戶端閃退 206
16.2.3 訪問被拒絕 206
16.3 語法相關報錯 206
16.3.1 表名錯誤 206
16.3.2 列名錯誤 206
16.3.3 group by 錯誤 206
16.3.4 權限錯誤 207
16.3.5 逗號錯誤 207
16.3.6 括號錯誤
《對比Excel,輕松學習Python報表自動化》目錄
第1 部分 Python 基礎
第1 章 認識自動化報表 / 2
1.1 Excel 的基本組成 2
1.2 制作一份自動化報表的流程3
1.3 用Python 操作Excel 的各種庫 . 4
第2 章 Python 基礎知識 / 5
2.1 Python 是什麼5
2.2 Python 的下載與安裝. 5
2.2.1 安裝教程. 5
2.2.2 IDE 與IDLE . 18
2.3 Jupyter Notebook 介紹 19
2.3.1 新建Jupyter Notebook 文件 19
2.3.2 運行你的段代碼 20
2.3.3 重命名Jupyter Notebook 文件20
2.3.4 保存Jupyter Notebook 文件 21
2.3.5 導入本地Jupyter Notebook 文件 22
2.3.6 Jupyter Notebook 與Markdown. 23
2.4 基本概念23
2.4.1 數. 23
2.4.2 變量 24
2.4.3 標識符. 25
2.4.4 數據類型25
2.4.5 輸出與輸出格式設置. 25
2.4.6 縮進與注釋 26
2.5 字符串 27
2.5.1 字符串概念27
2.5.2 字符串連接. 27
2.5.3 字符串復制. 28
2.5.4 字符串長度 28
2.5.5 字符串查找28
2.5.6 字符串索引29
2.5.7 字符串分隔30
2.5.8 字符刪除 31
2.6 數據結構——列表 31
2.6.1 列表概念31
2.6.2 新建一個列表31
2.6.3 列表復制 32
2.6.4 列表合並. 32
2.6.5 向列表中插素 33
2.6.6 獲取列表中值出現的次數 33
2.6.7 獲取列表中值出現的位置 34
2.6.8 獲取列表中指定位置的值 34
2.6.9 對列表中的值進行刪除35
2.6.10 對列表中的值進行排序35
2.7 數據結構——字典35
2.7.1 字典概念 35
2.7.2 新建一個字典 36
2.7.3 字典的keys()、values()和items()方法36
2.8 數據結構—&mda組37
2.8組概念 37
2.8.2 新組 37
2.8.3組的長度. 37
2.8.4素 37
2.8組與列表相互轉換. 38
2.8.6 zip()函數38
2.9 運算符39
2.9.1 算術運算符. 39
2.9.2 比較運算符 39
2.9.3 邏輯運算符. 40
2.10 循環語句 40
2.10.1 for 循環 . 40
2.10.2 while 循環 40
2.11 條件語句 41
2.11.1 if 條件語句 41
2.11.2 else 語句 43
2.11.3 elif 語句 44
2.12 函數. 45
2.12.1 普通函數 45
2.12.2 匿名函數. 46
2.13 高級特性 47
2.13.1 列表生成式. 47
2.13.2 map()函數 48
2.14 庫. 48
2.14.1 安裝一個新庫 49
2.14.2 卸載一個庫. 50
第2 部分 格式設置
第3 章 用Python 對報表進行基本操作 / 52
3.1 打開已有的工作簿 52
3.2 創建新的工作簿 54
3.2.1 在創建工作簿時插入數據 54
3.2.2 對格賦值. 55
3.2.3 對格賦值 . 55
3.2.4 對多行進行賦值. 56
3.3 Pandas 與openpyxl 之間的轉換 57
3.4 Sheet 相關設置 58
3.4.1 新建一個Sheet58
3.4.2 對已有Sheet 進行設置 61
第4 章 用Python 格選擇和字體設置 / 63
4.1 用Python 格 63
4.1.1 選擇格. 63
4.1.2 選擇格. 63
4.2 用Python 設置Excel 字體 . 64
4.2.1 基本字體相關設置. 64
4.2.格填充 68
4.2.3 邊框線設置 70
4.2.4 案例:批量格字體 74
第5 章 用Python 設置Excel 對齊方式 / 76
5.1 設置對齊方式 76
5.2 合並與格81
5.3 設置格樣式 83
5.4 案例:批量格對齊方式 83
第6 章 用Python 設置Excel 數字、條件格式 / 86
6.1 用Python 設置Excel 數字格式 . 86
6.2 用Python 設置Excel 條件格式 89
6.2.1 突出格 . 90
6.2.2 數據條92
6.2.3 色階 96
6.2.4 圖標集 99
第7 章 用Python 設置Exce格 / 105
7.1 插入行或列 105
7.2 刪除行或列 107
7.3 行高/列寬的設置 109
7.4 隱藏行或列 110
7.5 案例:批量設置多行/列的行高/列寬 111
第8 章 用Python 對Excel 進行編輯 / 113
8.1 數據排序 113
8.2 數據篩選 114
8.3 數據查找與替換 116
第3 部分 函數
第9 章 用Python 實現Excel 中的函數計算 / 118
9.1 函數中的常見錯誤 . 118
9.1.1 #DIV/0!錯誤 . 118
9.1.2 #N/A 錯誤 . 120
9.1.3 #VALUE!錯誤 . 124
9.1.4 #NAME?錯誤 125
9.1.5 #REF!錯誤125
9.2 邏輯函數 . 126
9.2.1 IF()函數:判斷條件是否滿足 . 126
9.2.2 AND()函數:判斷多個條件是否同時滿足129
9.2.3 OR()函數:判斷多個條件中是否有其中一個滿足 130
9.2.4 IFERROR()函數:對錯誤值進行處理 132
9.3 文本函數. 132
9.3.1 文本截取. 132
9.3.2 文本合並 138
9.3.3 文本查找與替換 142
9.4 日期與時間函數 . 150
9.4.1 獲取當前的日期、時間 150
9.4.2 獲取日期和時間中的某部分 152
9.4.3 日期時間的運算——兩個日期之間的差值. 165
9.5 查找與引用. 168
9.5.1 VLOOKUP()函數:在多列以及多表中查找數據 168
9.5.2 ROWS()函數:獲取區域中的行數 . 170
9.5.3 COLUMNS()函數:獲取區域中的列數 . 171
9.6 數學和三角函數 . 172
9.6.1 常規計算函數 172
9.6.2 格式調整函數 . 176
9.6.3 指數與對數函數 . 183
9.7 統計函數 . 187
9.7.1 均值相關 . 187
9.7.2 計數相關. 190
9.7.3 值函數 . 193
9.7.4 排位相關函數. 196
9.7.5 統計相關函數. 204
9.8 自定義公式 . 206
第4 部分 自動化報表
第10 章 審閱和視圖設置 / 210
10.1 新建批注 . 210
10.2 文檔保護 212
10.3 凍結窗格 213
第11 章 用Python 繪制Excel 圖表 / 216
11.1 圖表基素216
11.2 圖表繪制基本流程218
11.3 圖表基本設置 220
11.3.1 圖表標題 220
11.3.2 坐標軸標題220
11.3.3 圖例設置 . 221
11.4 圖表繪制. 221
11.4.1 折線圖 221
11.4.2 柱狀圖. 221
11.4.3 面積圖223
11.4.4 散點圖 . 224
11.4.5 氣泡圖 226
11.4.6 圖表布局. 228
11.5 如何將圖片插入Excel 中 229
第12 章 用Python 對Excel 文件進行批量操作 / 231
12.1 OS 庫介紹. 231
12.2 OS 庫基本操作. 231
12.2.1 獲取當前工作路徑 . 231
12.2.2 獲取一個文件夾下的所有文件名 231
12.2.3 對文件進行重命名232
12.2.4 創建一個文件夾. 232
12.2.5 刪除一個文件夾 . 233
12.2.6 刪除一個文件 233
12.3 批量操作 . 233
12.3.1 批量讀取一個文件夾下的多個文件 233
12.3.2 批量創建文件夾 234
12.3.3 批量重命名文件 235
12.4 其他批量操作 236
12.4.1 批量合並多個文件236
12.4.2 將一份文件按照指定列拆分成多個文件237
第13 章 自動發送郵件 / 239
13.1 使用郵箱的步 . 239
13.2 一份郵件的組成 . 239
13.3 如何發送郵件. 240
13.4 正式發送一份郵件241
13.5 批量發送郵件. 243
第14 章 將Python 代碼轉化為可執行的程序 / 245
14.1 安裝所需要的Python 庫245
14.2 對代碼進行打包 246
第15 章 工作中的報表自動化實戰 / 249
15.1 當日各項指標的同/環比情況 249
15.2 當日各省份創建訂單量情況 253
15.3 近一段時間創建訂單量趨勢. 255
15.4 將不同的結果進行合並256
15.4.1 將不同的結果合並到同一個Sheet 中 256
15.4.2 將不同的結果合並到同一工作簿的不同Sheet 中261