對比 Excel,輕松學習 Python 報表自動化
內容描述
“入職數據分析師系列”圖書的前兩本《對比Excel,輕松學習Python 數據分析》和《對比Excel,輕松學習SQL 數據分析》深受讀者好評,截至2021 年8 月累計銷量近15萬冊。這本《對比Excel,輕松學習Python 報表自動化》繼承了對比學習的特點,全書內容圍繞Excel 功能區的各個模塊,通過對比Excel 的方式來詳細講解每個模塊中對應的Python 代碼如何實現,輕松、快速地幫助職場人實現報表自動化,提高工作效率。本書主要分為4 個部分:第1 部分介紹Python 基礎知識,讓讀者對Python 中常用的操作和概念有所瞭解;第2 部分介紹格式相關的設置方法,包括字體設置、條件格式設置等內容;第3 部分介紹各種類型的函數;第4 部分介紹自動化相關的其他技能,比如自動發送郵件、自動打包等操作。
目錄大綱
第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 數據結構——元組37
2.8.1 元組概念 37
2.8.2 新建一個元組 37
2.8.3 獲取元組的長度. 37
2.8.4 獲取元組內的元素 37
2.8.5 元組與列表相互轉換. 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.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 設置Excel 單元格 / 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
作者介紹
張俊紅:某互聯網公司資深數據分析師,暢銷書《對比Excel,輕鬆學習Python數據分析》作者。
對比學習法倡導者,入職數據分析師系列叢書作者。
喜歡分享,致力於做一個數據科學路上的終身學習者、實踐者、分享者。公眾號“俊紅的數據分析之路”運營人。