本書以任務為導向,結合大量數據分析案例及教學經驗,深入淺出地介紹Python語言在處理Excel格式數據時的重要方法,詳盡地介紹了Python第三方庫(xlrd庫、xlwt庫、xlwings庫、pandas庫、matplotlib庫、numpy庫和pyplot庫)的基本操作方法。本書設置了多個案例,每個案例都配有程序運行源代碼,讀者可通過二維碼鏈接到網站下載源代碼,查看運行結果,同時網站還提供作者精心制作的視頻講解,讀者可輕松愉快地學習用Python處理各領域的數據,真正地學以致用。
本書可作為高校計算機公共基礎程序設計課程和數據分析課程的教材,也可供需要處理大量Excel數據、工作重復度較高的相關人員使用。
在數字化時代,數據處理已成為職場技能!禤ython高效辦公玩轉Excel數據分析》是一本專為職場辦公人員、數據分析專業(yè)人員、大學生、科研人員和程序員量身定制的實用指南。本書以任務為導向,結合豐富的數據分析案例及實際編程經驗,深入淺出地介紹如何使用Python語言對Excel進行高效的數據處理。主要特色如下:
(1)任務導向,即學即用:結合實際數據分析案例,以任務為導向,幫助讀者快速上手。所有案例配有完整程序源代碼及運行結果,確保讀者能夠立即應用所學知識。
(2)內容全面,版本兼容:涵蓋Python基礎知識、.xls和.xlsx文件數據處理、數據可視化、程序界面設計、數據預處理等。所有案例均在Python 3.11.3版本上運行通過,確保最新技術兼容性。
(3)適用廣泛,提升效率:深入淺出的講解,適合初學者快速入門,也適合有一定基礎的讀者提升技能。掌握Python對Excel數據處理的高效方法,提升工作和學習效率。
計算機的核心功能是計算,而計算依賴于數據。在大數據時代,數據處理成為這一核心功能的最直接體現。面對海量的數據,傳統的手工操作已經不能滿足人們日常生活和工作所需,因此數據處理方法正在經歷一場新的革命。本書以Python語言為基礎,旨在替代Excel中的手工數據處理操作,介紹一種全新的數據處理方法。使用Python語言,只需要幾行代碼就可以輕松解決問題,特別是在任務重復性很高的情況下,只要略微改動代碼,即可顯著節(jié)省時間,提高工作效率。
Python是一種跨平臺的計算機程序設計語言,它結合了解釋性、編譯性、互動性和面向對象的特性。Python最初被設計用于編寫自動化腳本,但隨著版本的更新和新功能的增加,它已經廣泛應用于獨立和大型項目的開發(fā)。
在實際應用中,如何將Excel與Python語言相結合進行數據處理,是數據分析從業(yè)者需要掌握的關鍵技能。雖然Excel是數據處理的專業(yè)軟件,但其在自動化操作方面不如Python靈活。利用Python可以輕松地讀取、計算和編輯Excel文件中的數據,從而提高數據分析工作的效率。
本書主要講述如何利用Python處理Excel文件,從而進行數據分析以及可視化等操作。通過學習,讀者可以顯著提高辦公效率,并將所學知識應用到實際工作中。
本書內容共分為8章。
第1章介紹了Python語言的基礎知識。
第2章介紹了xlrd庫和xlwt庫,用于處理.xls文件。
第3章介紹了xlwings庫,用于處理.xlsx文件。
第4章介紹了pandas庫,專注于數據處理。
第5章介紹了matplotlib庫,用于數據可視化。
第6章介紹了tkinter庫,用于窗口視窗設計。
第7章介紹了openpyxl庫,用于簡單的Excel文件讀寫操作。
第8章介紹了數據預處理。
由于編者水平有限,加之時間倉促,書中難免存在不當之處,懇請廣大讀者批評指正。
本書提供程序源碼、教學素材和教學案例配套資源,其中程序源碼和教學素材可掃描目錄上方對應二維碼獲取,教學案例需到清華大學出版社官方網站本書頁面獲取。
編者2025年1月
第1章Python基礎
1.1Python語言介紹
1.2Python語言特點
1.3Python應用領域
1.3.1數據爬蟲
1.3.2Web開發(fā)
1.3.3軟件測試
1.3.4運維管理
1.3.5人工智能
1.3.6數據分析
1.4Python開發(fā)環(huán)境搭建
1.4.1Python軟件下載(Windows系統)
1.4.2Python軟件的安裝
1.4.3Python軟件的使用
1.5循環(huán)語句
1.5.1for循環(huán)語句
1.5.2while循環(huán)
1.6條件語句
1.6.1簡單條件語句(if)
1.6.2二分支條件語句(ifelse)
1.6.3多分支條件語句(ifelifelse)
1.7列表
1.8字典
1.9Python文件打包輸出
1.9.1文件打包輸出
1.9.2設置打包文件圖標
1.10本章總結
第2章xlrd庫和xlwt庫
2.1創(chuàng)建工作簿
2.1.1新工作簿的創(chuàng)建
2.1.2添加工作表
2.2讀取工作簿
2.3讀取工作表
2.3.1以工作表名稱讀取工作表
2.3.2以工作表序號讀取工作表
2.3.3以索引方式讀取工作表
2.4讀取單元格
2.4.1指定行讀取單元格數據
2.4.2指定列讀取單元格數據
2.4.3指定行、列讀取單元格數據
2.5寫入數據
2.5.1寫入單元格數據
2.5.2寫入行數據
2.5.3寫入列數據
2.5.4寫入多行多列數據
2.6讀取數據
2.6.1讀取單元格數據
2.6.2讀取行數據
2.6.3讀取列數據
2.6.4讀取所有數據
2.7修改數據
2.7.1修改單元格數據
2.7.2修改行數據
2.7.3修改列數據
2.8插入數據
2.8.1插入行數據
2.8.2插入列數據
2.9刪除數據
2.9.1刪除單元格數據
2.9.2刪除行數據
2.9.3刪除列數據
2.9.4刪除指定范圍數據
2.10數據操作相關內容
2.10.1獲取工作表的總行數
2.10.2獲取工作表的總列數
2.10.3獲取工作簿中工作表的數量
2.10.4獲取工作簿中所有工作表的名稱
2.11數據類型獲取
2.11.1獲取單元格的數據類型
2.11.2獲取行的數據類型
2.11.3獲取列的數據類型
2.12數據計算
2.12.1工作表中數據計算
2.12.2工作表中公式寫入
2.13格式設置
2.13.1設置行高和列寬
2.13.2設置字體屬性(Font)
2.13.3設置邊框屬性(Borders)
2.13.4設置對齊屬性(Alignment)
2.13.5設置背景屬性(Pattern)
2.13.6合并單元格
2.14xlrd庫常用函數匯總
2.15xlwt庫常用函數匯總
2.16本章總結
第3章xlwings庫
3.1啟動/退出操作
3.1.1啟動Excel程序
3.1.2退出Excel程序
3.2工作簿(Book)操作
3.2.1創(chuàng)建工作簿
3.2.2打開工作簿
3.2.3保存工作簿
3.2.4關閉工作簿
3.2.5退出工作簿
3.2.6工作簿名稱
3.2.7工作簿地址
3.3工作表(Sheet)操作
3.3.1創(chuàng)建工作表
3.3.2追加工作表
3.3.3打開工作表
3.3.4調用工作表
3.3.5工作表相關操作
3.4數據操作
3.4.1寫入數據
3.4.2修改數據
3.4.3插入數據
3.4.4讀取數據
3.4.5刪除數據
3.5范圍(Range)操作
3.5.1范圍的相關數據
3.5.2范圍的相關操作
3.5.3范圍的格式自適應
3.6單元格操作
3.6.1單元格的相關數據
3.6.2設置超鏈接
3.6.3合并單元格
3.7格式設置
3.7.1設置字體(Font)
3.7.2設置邊框(Borders)
3.7.3設置位置(Alignment)
3.7.4設置顏色(Color)
3.8本章總結
第4章pandas庫
4.1創(chuàng)建文件
4.1.1創(chuàng)建工作簿
4.1.2填寫數據
4.1.3設置索引
4.2讀取文件
4.2.1以工作表名稱讀取文件
4.2.2讀取文件并設置索引
4.2.3讀取文件并隱藏標題
4.3寫入數據
4.3.1寫入單元格數據
4.3.2寫入整行數據
4.3.3寫入整列數據
4.3.4寫入整行整列數據
4.3.5寫入.csv文件
4.3.6寫入.tsv文件
4.3.7寫入.txt文件
4.3.8填充日期序列
4.3.9填充年份序列
4.3.10填充月份序列
4.4讀取數據
4.4.1讀取單元格數據
4.4.2讀取整行數據
4.4.3讀取整列數據
4.4.4讀取部分數據
4.4.5讀取列數據至列表
4.4.6讀取行數據至列表
4.5修改數據
4.5.1修改列標題
4.5.2修改單元格數據
4.5.3替換整行數據
4.5.4替換整列數據
4.6插入數據
4.6.1插入整行數據
4.6.2插入整列數據
4.7刪除數據
4.7.1刪除整行數據
4.7.2刪除整列數據
4.7.3有條件刪除整行數據
4.8工作表中數據的行數和列數
4.8.1獲取工作表的行數和列數
4.8.2獲取工作表的行數
4.8.3獲取工作表的列數
4.9數據計算
4.9.1公式計算
4.9.2函數填充(求和)
4.9.3函數填充(計算平均值)
4.10文件類型轉換
4.10.1讀取.csv文件內容到Excel文件中
4.10.2讀取.tsv文件內容到Excel文件中
4.10.3讀取.txt文件內容到Excel文件中
4.11合并工作表
4.11.1將工作表合并
4.11.2合并工作表(列的方式)
4.12數據統計與分析
4.12.1升序排序
4.12.2降序排序
4.12.3多重排序
4.12.4數據篩選
4.12.5數據分類匯總(按字符型匯總)
4.12.6數據分類匯總(按數值型匯總)
4.12.7創(chuàng)建數據透視表
4.12.8數據透視表分組
4.13本章總結
第5章數據可視化
5.1matplotlib基礎
5.1.1創(chuàng)建繪圖窗口(figure()函數)
5.1.2建立單個子圖(subplot()函數)
5.1.3設置坐標軸線
5.1.4建立多個子圖(一)
5.1.5建立多個子圖(二)
5.1.6繪制一條直線
5.1.7繪制多條直線
5.1.8繪制曲線
5.1.9添加圖例
5.1.10設置布局
5.1.11共享軸線
5.1.12共享X軸(twinx()函數)
5.1.13共享Y軸(twiny()函數)
5.1.14設置圖形邊界及數軸位置
5.1.15設置圖表與邊界距離(subplot_adjust())
5.1.16填充顏色(subplot())
5.2柱狀圖(bar())
5.2.1繪制普通柱狀圖
5.2.2繪制分組柱狀圖
5.2.3繪制疊加柱狀圖
5.3餅圖(pie())
5.3.1繪制普通餅圖
5.3.2餅圖優(yōu)化
5.3.3繪制環(huán)形圖
5.4折線圖(plot())
5.4.1繪制折線圖
5.4.2折線圖優(yōu)化
5.4.3繪制多折線圖
5.4.4繪制疊加折線圖(area())
5.5散點圖(scatter())
5.5.1繪制散點圖
5.5.2繪制氣泡圖
5.6面積圖(area())
5.6.1繪制面積圖
5.6.2繪制疊加區(qū)域圖
5.7直方圖(hist())
5.7.1繪制直方圖
5.7.2直方圖優(yōu)化
5.8密度圖(density())
5.8.1繪制密度圖
5.8.2密度圖優(yōu)化
5.9雷達圖
5.10數據透視表
5.11本章總結
第6章界面設計tkinter庫
6.1常用窗口組件及簡要說明
6.2常用窗口組件設置
6.3有關錨定點說明
6.4窗體
6.4.1創(chuàng)建窗體1
6.4.2創(chuàng)建窗體2
6.4.3創(chuàng)建窗體3
6.4.4創(chuàng)建窗體4
6.5標簽(Label)
6.6單行文本框(Entry)
6.7多行文本框(Text)
6.7.1創(chuàng)建多行文本框
6.7.2定位多行文本框內容位置
6.7.3設置多行文本框內容格式
6.8命令按鈕(Button)
6.9單選按鈕(Radiobutton)
6.10復選框(Checkbutton)
6.11列表框(Listbox)
6.12滾動條(Scrollbar)
6.13進度條(Scale)
6.14框架(Frame)
6.15消息框(messageBox)
6.15.1建立錯誤消息框
6.15.2建立警告消息框
6.15.3建立提示消息框
6.15.4建立選擇對話框
6.16菜單條(Menu)
6.16.1創(chuàng)建菜單
6.16.2實現字體與字號聯動
6.17菜單按鈕(Menubutton)
6.18選擇菜單(OptionMenu)
6.19形狀控制(Canvas)
6.19.1畫布上建立組件
6.19.2畫布上移動組件
6.20窗口布局管理(PanedWindow)
6.20.1創(chuàng)建子控件(兩個)
6.20.2創(chuàng)建子控件(三個)
6.21頂層(Toplevel)
6.22窗口布局綜述
6.22.1生成組件填充窗口
6.22.2縱向排列組件
6.22.3橫向排列組件
6.22.4按行列排列組件(grid)
6.22.5跨行跨列排列組件
6.22.6組件精準布局(place)
6.22.7組件相互覆蓋
6.22.8組件相對位置和相對尺寸
6.23本章總結
第7章openpyxl庫
7.1工作簿對象
7.1.1創(chuàng)建工作簿
7.1.2讀取工作簿
7.1.3工作簿相關操作
7.2工作表對象
7.2.1讀取工作表數據
7.2.2追加工作表數據
7.2.3修改工作表數據
7.2.4插入工作表數據
7.2.5刪除工作表數據
7.2.6工作表數據轉換
7.2.7工作表相關操作
7.3單元格對象
7.3.1單元格數據讀取
7.3.2單元格數據寫入
7.3.3單元格公式寫入
7.3.4單元格合并
7.4單元格格式
7.4.1設置單元格字體(Font)
7.4.2設置單元格邊框(Border)
7.4.3設置單元格對齊方式(Alignment)
7.4.4設置單元格背景顏色(PatternFill)
7.4.5設置單元格行高
7.4.6設置單元格列寬
7.5本章總結
第8章Python數據預處理
8.1pandas數據結構
8.1.1創(chuàng)建Series對象
8.1.2創(chuàng)建DataFrame對象
8.2數據基本操作
8.2.1通過行號和列號提取數據(iloc)
8.2.2通過索引提取數據(loc)
8.2.3插入數據
8.2.4遍歷數據
8.2.5設置索引
8.2.6檢測數據
8.2.7Series對象與DataFrame對象相互轉換
8.3數據增改
8.3.1新增數據
8.3.2修改數據
8.3.3刪除數據
8.4數據清洗
8.4.1DataFrame清洗
8.4.2Series清洗
8.5數據格式化
8.5.1Series數據格式化
8.5.2日期與時間格式化
8.6數據類型轉換
8.6.1顯示數據類型
8.6.2設置數據類型
8.6.3自動設置數據類型
8.6.4數據類型轉換方式
8.6.5數據類型篩選
8.7數據排序
8.7.1按索引排序
8.7.2按數值排序
8.7.3其他排序
8.8數據計算與統計
8.8.1數據計算
8.8.2數據統計
8.8.3數據信息統計
8.9數據分組
8.9.1數據分組類型
8.9.2分組應用
8.9.3應用組合
8.10日期時間序列
8.10.1日期時間對象
8.10.2時間差創(chuàng)建日期時間序列
8.10.3日期時間序列索引
8.10.4日期時間序列相關功能
8.10.5日期時間序列的應用
8.11pandas數據處理常用函數
8.11.1顯示前N行數據(head())
8.11.2輸出數據基本信息(info())
8.11.3數據統計匯總(describe())
8.11.4統計類的數量(value_counts())
8.11.5判斷數據缺失值(isna())
8.11.6判斷數據缺失值(any())
8.11.7刪除缺失值數據(dropna())
8.11.8填充缺失數據(fillna())
8.11.9數據索引排序(sort_index())
8.11.10數據排序(sort_values())
8.11.11更改數據類型(astype())
8.11.12修改數據列名稱(rename())
8.11.13設置索引(set_index())
8.11.14重置索引(reset_index())
8.11.15刪除重復值(drop_duplicates())
8.11.16刪除字段(drop())
8.11.17數據篩選(isin())
8.11.18變量離散化(pd.cut())
8.11.19變量離散化(pd.qcut())
8.11.20替換數據(where())
8.11.21數據拼接(pd.concat())
8.11.22數據透視(pivot_table())
8.12本章總結
參考文獻