寫作本書的目的是希望讓不懂編程的讀者也能使用ChatGPT生成代碼,輕松實現Excel數據處理自動化,讓讀者從零基礎成為高手;讓懂編程的讀者也能收獲良多,快速提升工作效率。書中用ChatGPT自動生成代碼,實現了Excel數據處理自動化的絕大部分內容,包括數據導入和導出、數據整理、數據預處理、數據統計分析、數據可視化和與Excel工作表交互等。書中針對數據處理的每個問題都提供了示例,結合示例實踐了提示詞的編寫技巧,并對與表達、數據、輸出、效率和語言等相關的主題進行了探討和總結。書中的代碼是使用pandas、xlwings和OpenPyXL編寫的,這也是目前通過編程方式處理Excel數據最優的工具組合。本書適合任何對ChatGPT和Excel數據處理感興趣的讀者閱讀,包括職場辦公人員、數據分析人員、大學生、科研人員和程序員等。
童大謙,具有15年以上VB、VBA、.NET開發經驗,開發了多個數學、數據分析與可視化方面的軟件,以及與科研院所合作開發了若干個軟件系統。對Python、MATLAB、SPSS、R等數據分析軟件非常熟悉,出版多本相關圖書。曾在高校執教,CSDN高級講師,全網學員目前近30萬人。
第1章 概述1
1.1 Excel和Python數據處理簡介1
1.1.1 Excel數據處理1
1.1.2 使用Python處理數據2
1.1.3 pandas、xlwings和OpenPyXL組合的優勢2
1.1.4 DataFrame和Series3
1.1.5 Python及各種包的安裝4
1.1.6 Python IDLE編程環境5
1.2 ChatGPT及其操作基礎7
1.2.1 ChatGPT簡介7
1.2.2 得到想要的答案:提示詞簡介7
1.2.3 使用ChatGPT生成代碼9
1.2.4 面向問題重構與提示詞模板11
1.2.5 使用ChatGPT進行數據分析的主要思想和步驟小結11
1.3 提示詞的編寫技巧12
1.3.1 基本技巧12
1.3.2 數據相關12
1.3.3 表達相關13
1.3.4 輸出相關14
1.3.5 效率相關14
1.3.6 語言相關15
1.4 怎樣使用本書16
1.4.1 不同讀者怎樣使用本書16
1.4.2 在使用提示詞時可能遇到的問題及解決辦法16
第2章 使用ChatGPT+pandas實現數據導入和導出18
2.1 使用ChatGPT+pandas導入Excel文件中的數據18
2.1.1 導入Excel文件中的全部數據18
2.1.2 導入Excel文件中的部分數據20
2.2 使用ChatGPT+pandas將數據寫入Excel文件中21
2.3 使用ChatGPT+pandas實現CSV文件中數據的導入和導出23
2.4 將數據保存到新工作簿的工作表中25
2.5 將數據保存到同一工作簿的新工作表中27
2.6 局部區域數據的導入和導出(與xlwings交互)31
2.7 局部區域數據的導入和導出(與OpenPyXL交互)33
第3章 使用ChatGPT+pandas實現單個文件數據的整理36
3.1 使用ChatGPT+pandas實現列操作36
3.1.1 直接添加一個新列36
3.1.2 利用已有列數據通過簡單計算得到新列38
3.1.3 利用已有列數據通過轉換得到新列39
3.1.4 利用已有列數據通過統計得到新列42
3.1.5 根據簡單條件得到新列45
3.1.6 根據多級條件得到新列46
3.1.7 根據多列數據組成的條件得到新列48
3.1.8 根據條件得到新列(mask方法)50
3.1.9 根據條件得到新列(where方法)51
3.1.10 插入列53
3.1.11 修改單個列的列名54
3.1.12 修改多個列的列名56
3.1.13 給所有列名添加前綴和后綴57
3.1.14 修改列數據的數據類型59
3.1.15 修改列數據61
3.1.16 修改列數據的格式63
3.1.17 將列中的字符串數據修改為數字65
3.1.18 根據條件修改數據67
3.1.19 刪除列68
3.2 使用ChatGPT+pandas實現行操作70
3.2.1 直接添加一個新行70
3.2.2 利用已有行數據通過計算得到新行72
3.2.3 插入行74
3.2.4 修改行名76
3.2.5 修改行數據78
3.2.6 刪除行79
3.3 使用ChatGPT+pandas實現值操作81
3.3.1 修改單個值81
3.3.2 修改局部區域中的值82
3.3.3 修改所有值84
3.4 使用ChatGPT+pandas實現數據查詢86
3.4.1 單條件查詢86
3.4.2 多條件查詢88
3.5 使用ChatGPT+pandas實現數據排序89
3.5.1 單條件排序89
3.5.2 多條件排序91
3.5.3 提取前3名數據92
3.6 使用ChatGPT+pandas實現數據篩選94
3.6.1 單條件篩選94
3.6.2 多條件篩選96
3.7 使用ChatGPT+pandas實現數據排名97
3.7.1 中國式排名97
3.7.2 美國式排名99
第4章 使用ChatGPT+pandas實現多個文件數據的整理102
4.1 使用ChatGPT+pandas拆分數據102
4.1.1 簡單拆分——垂直102
4.1.2 簡單拆分——水平104
4.1.3 根據變量的值將數據拆分到不同工作簿中105
4.2 使用ChatGPT+pandas合并數據107
4.2.1 合并不同工作表中的數據107
4.2.2 合并不同工作簿中的數據112
4.3 使用ChatGPT+pandas拼接數據114
4.4 使用ChatGPT+pandas連接數據116
4.5 使用ChatGPT+pandas追加數據118
第5章 使用ChatGPT+pandas實現文本數據的整理120
5.1 使用ChatGPT+pandas提取子文本120
5.2 使用ChatGPT+pandas改變文本大小寫122
5.3 使用ChatGPT+pandas實現分列124
5.3.1 使用單一分隔符進行分列124
5.3.2 使用多種分隔符進行分列126
5.3.3 按照固定寬度進行分列128
5.4 使用ChatGPT+pandas合并文本129
5.5 使用ChatGPT+pandas查找和替換子文本132
5.6 使用ChatGPT+pandas輸出文本的格式133
第6章 使用ChatGPT+pandas實現日期時間數據的整理136
6.1 使用ChatGPT+pandas實現時間點數據的整理136
6.1.1 從給定的日期時間中提取單位對應的數字136
6.1.2 計算給定日期是星期幾138
6.2 使用ChatGPT+pandas實現時間段數據的整理140
6.2.1 計算兩個日期之間的間隔天數140
6.2.2 已知起始日期和間隔天數計算終止日期142
第7章 使用ChatGPT+pandas實現時間序列數據的整理144
7.1 時間序列數據144
7.1.1 創建時間序列數據144
7.1.2 從文件中導入時間序列數據146
7.2 使用ChatGPT+pandas實現時間序列數據的常見處理148
7.2.1 數據查詢148
7.2.2 數據篩選149
7.2.3 數據轉換150
7.2.4 數據匯總152
7.3 使用ChatGPT+pandas實現時間序列數據偏移153
7.3.1 日期時間偏移153
7.3.2 工作日偏移154
7.4 使用ChatGPT+pandas實現時間序列數據平滑156
7.5 使用ChatGPT+pandas實現時間序列數據重采樣158
第8章 使用ChatGPT+pandas實現分類數據的整理160
8.1 分類數據160
8.1.1 創建分類數據160
8.1.2 設置分類值162
8.1.3 對分類數據進行排序163
8.2 使用ChatGPT+pandas處理分類數據164
8.2.1 查詢分類165
8.2.2 增加分類值166
8.2.3 修改分類值167
8.2.4 刪除分類值168
第9章 使用ChatGPT+pandas實現數據預處理170
9.1 使用ChatGPT+pandas處理重復數據170
9.1.1 整行數據重復的處理170
9.1.2 指定數據重復的處理172
9.2 使用ChatGPT+pandas處理缺失值173
9.2.1 發現缺失值174
9.2.2 刪除缺失值176
9.2.3 填充缺失值177
9.3 使用ChatGPT+pandas處理異常值179
9.3.1 發現異常值179
9.3.2 刪除異常值182
9.3.3 替換異常值184
9.4 使用ChatGPT+pandas實現數據轉換185
9.4.1 數據標準化186
9.4.2 數據歸一化187
?
第10章 使用ChatGPT+pandas實現統計分析190
10.1 使用ChatGPT+pandas實現描述性統計190
10.1.1 描述數據集中趨勢190
10.1.2 描述數據離中趨勢192
10.1.3 描述數據分布形狀194
10.2 使用ChatGPT+pandas實現分組統計195
10.2.1 分組描述性統計195
10.2.2 分組提取首次數據和末次數據197
10.2.3 多條件匯總199
10.2.4 分組按條件統計201
10.3 使用ChatGPT+pandas實現頻數分析202
10.4 使用ChatGPT+pandas實現數據透視表204
10.4.1 創建數據透視表204
10.4.2 設置數據透視表中值的輸出格式206
10.4.3 處理數據透視表中的缺失值208
10.4.4 設置數據透視表的聚合函數210
10.4.5 為數據透視表添加行匯總和列匯總213
10.4.6 設置數據透視表中數據的顯示方式215
10.4.7 對數據透視表中的數據進行排序217
10.4.8 聚合函數為連接字符串219
第11章 使用ChatGPT實現與Excel工作表相關的設置223
11.1 使用ChatGPT+xlwings設置Excel工作表223
11.1.1 設置邊框223
11.1.2 設置背景色227
11.1.3 設置字體229
11.1.4 設置對齊方式231
11.1.5 單元格合并和取消合并233
11.2 使用ChatGPT+OpenPyXL設置Excel工作表235
11.2.1 設置邊框235
11.2.2 設置背景色238
11.2.3 設置字體239
11.2.4 設置對齊方式241
11.2.5 單元格合并和取消合并242
第12章 使用ChatGPT實現數據可視化244
12.1 使用ChatGPT+xlwings實現數據可視化244
12.1.1 條形圖244
12.1.2 餅圖247
12.2 使用ChatGPT+OpenPyXL實現數據可 視化249
12.2.1 條形圖249
12.2.2 餅圖251
12.3 使用ChatGPT+Matplotlib實現數據可視化252
12.3.1 條形圖253
12.3.2 餅圖254
第13章 Python語法基礎256
13.1 常量和變量256
13.1.1 常量256
13.1.2 變量及其聲明、賦值和刪除256
13.1.3 變量的數據類型257
13.2 數字257
13.2.1 整型數字257
13.2.2 浮點型數字258
13.3 字符串258
13.3.1 創建字符串258
13.3.2 索引和切片258
13.3.3 字符串的長度和大小寫259
13.3.4 字符串的分割、連接和刪除259
13.4 列表260
13.4.1 創建列表260
13.4.2 添加列表元素261
13.4.3 索引和切片261
13.4.4 刪除列表元素262
13.5 元組 262
13.5.1 元組的創建和刪除263
13.5.2 索引和切片263
13.6 字典263
13.6.1 字典的創建263
13.6.2 字典元素的增、刪、改、查264
13.7 表達式265
13.7.1 算術運算符265
13.7.2 關系運算符265
13.7.3 邏輯運算符266
13.8 流程控制266
13.8.1 判斷結構266
13.8.2 循環結構——for循環268
13.8.3 循環結構——while循環268
13.9 函數269
13.9.1 內部函數269
13.9.2 標準模塊函數和第三方模塊 函數269
13.9.3 自定義函數269
第14章 pandas基礎271
14.1 NumPy數組271