-- 會員 / 註冊 --  
 帳號:
 密碼:
  | 註冊 | 忘記密碼
門市星期日公休
11/23 新書到! 11/17 新書到! 11/9 新書到! 11/3 新書到!
購書流程Q & A站務留言版客服信箱
3ds MaxMayaRhinoAfter EffectsSketchUpZBrushPainterUnity
PhotoShopAutoCadMasterCamSolidWorksCreoUGRevitNuke
C#CC++Java遊戲程式Linux嵌入式PLCFPGAMatlab
駭客資料庫搜索引擎影像處理FluentVR+ARANSYS深度學習
單晶片AVROpenGLArduinoRaspberry Pi電路設計CadenceProtel
HadoopPythonStm32CortexLabview手機程式AndroidiPhone
可查書名,作者,ISBN,3dwoo書號
詳細書籍分類

Python+Excel辦公自動化一本通

( 簡體 字)
作者:楊開振類別:1. -> 程式設計 -> Python
   2. -> Office -> OFFICE -> EXCEL
譯者:
出版社:電子工業出版社Python+Excel辦公自動化一本通 3dWoo書號: 55119
詢問書籍請說出此書號!

有庫存
NT定價: 495
折扣價: 465

出版日:8/1/2021
頁數:420
光碟數:0
站長推薦:
印刷:黑白印刷語系: ( 簡體 版 )
加入購物車 加到我的最愛
(請先登入會員)
ISBN:9787121418051
作者序 | 譯者序 | 前言 | 內容簡介 | 目錄 | 
(簡體書上所述之下載連結耗時費功, 恕不適用在台灣, 若讀者需要請自行嘗試, 恕不保證)
作者序:

譯者序:

前言:

為什么需要使用Python分析Excel數據
在使用傳統辦公軟件進行數據分析的過程中,使用最多的莫過于Excel。但是隨著移動互聯網時代的到來,數據也越來越多,因此,在很多場景中使用Excel進行數據分析就越來越難,主要的難點集中在以下3個方面。
?Excel只能處理少量的數據,經常使用Excel的用戶應該都發現過這個問題,當Excel的數據量過大時,其查詢和計算速度會明顯下降,甚至無法正常運行,這對于實際工作來說是不可接受的。
?Excel的功能是有限的,而通過編程可以獲得更多的功能。
?Excel需要手動反復操作,需要的時間長,并且容易出錯,而編寫的程序通過反復驗證之后,效率可以大幅度提高,并且不易出錯。
在移動互聯網時代,數據量日益增加,加之業務趨向于復雜化,越來越多的業務人員已經無法只通過Excel來做業務分析,他們需要更快速且復雜的解決方案,此時Python就出現在他們面前。
與傳統語言不同,Python更容易學習和使用,門檻較低,很快就成為時代的寵兒,只用簡單的十幾行代碼,甚至幾行代碼就能夠完成所需要的數據分析,使得業務人員通過自己編寫代碼完成數據分析成為可能。因此,那些需要做大量數據和復雜業務分析的辦公自動化崗位從業人員都開始要求學習Python+Excel,這就是我編寫本書的原因。
我和數據分析的緣分
我是一個擁有十余年計算機軟件編程經驗的工作者。畢業之后,我在一家從事銀行金融軟件的公司工作,主要為銀行出具各類統計分析報表,經常和各類數據分析打交道。我當時主要使用Java和數據庫編寫程序,為銀行出具各種報表。這一工作給我帶來的最大體會是,只有對銀行的各類業務進行深入且專業的學習,才能編寫程序完成工作。每次完成工作時,我都感到心滿意足,但是銀行對報表不斷有調整,加上銀行內部業務需求的變更,直接導致我需要重新熟悉新的需求之后才能進行開發。因此,只要業務發生變化,就會引發數據分析新的需求,由此可見,數據分析工作會一直繼續下去。
雖然我已經畢業十多年了,但是這些經歷讓我對數據分析有了深刻的認識。我始終都堅持一個觀念——數據分析最好由業務人員負責,否則成本會很高。這是因為第三方程序開發人員及其開發的業務系統存在以下幾方面缺點。
?程序開發人員不懂業務,需要深入學習業務知識之后才能進行開發,涉及專業問題時再與業務人員進行溝通,效率一般不會太高,因為需要解釋很多專業知識。
?請第三方開發系統成本高,畢竟軟件開發是比較深奧的工作,并且開發成本較高,周期也較長,很多時候并不能及時處理業務。
?系統開發完成后就會進入維護期,這段時間系統的功能相對固定,很難滿足臨時提出來的新需求,即便再找程序開發人員來增加功能,也很難保證時效。
因此,對于一些不是特別復雜的數據分析,我建議由業務人員來做。當需要大規模開發時,則由專業的軟件公司來做。這樣既有助于降低成本、提高靈活性,又能保證數據分析的時效性。
本書的安排
本書按照一本通的要求來編寫,盡量使讀者可以通過這一本書就能學習和掌握Python+Excel辦公自動化的應用,所以本書的內容分為3部分。
?Python 3.9語言基礎:第1∼10章,主要介紹Python的安裝、數據結構、語法和一些常見的原理和應用,為后續的學習奠定基礎。
?Excel數據分析:第11∼16章,主要介紹Excel的處理(xlwings)、數據分析庫(NumPy和Pandas)和繪圖庫(Matplotlib和Seaborn)。
?Excel數據分析實踐:第17和18章,通過電商銷售數據和個人貸款的項目,讀者不僅可以回顧前面的知識,還可以通過實踐提高數據分析和繪制圖表的能力。
本書使用的各個庫的版本如下:Python 3.9.0、xlwings 0.23.2、NumPy 1.20.3、Pandas 1.2.4、Matplotlib 3.3.3、Seaborn 0.11.1。
本書的讀者
本書是使用Python實現辦公自動化的書籍,既適合有一定Excel基礎,想進一步提高工作效率的辦公人員閱讀,也適合需要在日常工作中處理大量和復雜數據的辦公人員閱讀。本書從Python基礎展開介紹,并且涉及應用與實踐方面的內容,因此也適合Python初學者閱讀。
如何閱讀本書
我其實也是Python+Excel的新手,我十多年的工作經驗主要是Java和數據庫開發。由于我是計算機從業人員,編程經驗豐富,而計算機語言是相通的,所以相對來說,我學習Python就比較容易。其實,Python數據分析庫在很大程度上和數據庫的思想是接近的,因此我可以快速掌握數據分析知識。在編寫本書時,我也是一邊學習,一邊實踐,小心求證,并結合了我在工作時遇到的場景和問題。
學習編程不是一兩天的事情,也沒有捷徑,對于初學者來說,我建議先學好Python基礎和數據分析庫基礎,然后進行實踐。我之前接觸的學習編程的初學者大部分存在4個比較嚴重的問題。
?第一,眼高手低。有些初學者說他很快就看完書了,我直接回復他,這樣就等于沒有看過,因為學習編程是實踐問題,而不是看的問題,只是看過而沒有實踐過一律可被歸結為零,因為看的過程不會了解其中很多的細節和精妙之處。
?第二,不能正確地對待錯誤,在遇到錯誤或異常時,很多初學者過于沮喪,會選擇放棄或依靠他人。在我接觸的初學者中,經常有人想都不想就提問,其實這是錯誤的方式,在發生錯誤或異常時,首先要做的是查看程序的異常,從而定位問題,其次進行調試,通過監控變量來定位是哪一步走不通,而不是直接向他人請教,學會定位錯誤比采用正確的方法更重要,因為正確的方法是“魚”,而定位錯誤的過程是“漁”,“授人以魚不如授人以漁”。而事實上,每個人都會犯錯誤,更何況是初學者。我現在寫代碼犯錯少了,那是因為以前我犯的錯誤很多,有經驗了而已。所以,面對錯誤是每個編程初學者的必經之路,沒有什么值得恐懼的。
?第三,思而不學。有些初學者沒有認真學習書中的內容就根據自己的想法來編寫代碼,而自己的想法卻是錯誤的。如果你是初學者,那么我建議先學習其他人成功的案例,而非自己的想象,做好了別人的成功案例,就可以建立信心,學習效率也會提高,然后弄明白原理,才能發散自己的思維,畢竟“思而不學則殆”。
?第四,看不懂而不做。本書中的案例大部分都是可以運行的,在看不懂時,讀者可以先“抄襲”,然后自己運行,或者直接調試源碼也可以運行。運行起來以后你就會有信心,然后探索原因,而不是什么都不做,傻傻地看不懂,這樣是不會進步的。
在學習本書時,只要解決這4個問題,相信你就會事半功倍。古人云:“拳不離手,曲不離口。”學習編程更是如此,要想提高自己的編程能力,肯定需要不斷學習和實踐。
由于作者的能力和時間有限,書中難免存在不足之處,如果您發現了,請與出版社聯系,以方便本書后續的修訂。


楊開振
內容簡介:

本書主要面向企業數據分析需求,全面且系統地介紹了如何通過 Python 來分析 Excel 數據。本書主要分為 3 部分:第 1 部分是 Python 3.9 語言基礎,主要介紹 Python 的基礎知識,為之后的學習奠定基礎;第 2 部分是 Excel 數據分析,主要介紹 NumPy、Pandas、Matplotlib、Seaborn、openpyxl 和 xlwings 等內容,使讀者可以通過 Python 讀取和統計分析 Excel 數據;第 3 部分是 Excel 數據分析實踐,使讀者回歸到實際應用中,并回顧之前學習的知識。本書既適合有一定 Excel 基礎,想進一步提高工作效率的辦公人員閱讀,也適合那些需要在日常工作中處理大量和復雜數據的辦公人員閱讀,更適合 Python 初學者、編程零基礎想通過編程實現辦公自動化的人士閱讀。
目錄:

第1部分 Python 3.9語言基礎

第1章 計算機語言和Python簡介 2
1.1 計算機語言的分類 2
1.1.1 機器語言 2
1.1.2 匯編語言 2
1.1.3 高級語言 3
1.1.4 高級語言的發展趨勢 3
1.2 高級語言的分類 5
1.2.1 編譯型語言 5
1.2.2 解釋型語言 6
1.2.3 混合型語言 6
1.3 使用Python 7
1.3.1 為何要學習Python 7
1.3.2 在Windows操作系統中安裝
Python 8
1.3.3 在Ubuntu(UNIX)操作系統中
安裝Python 10
1.3.4 使用集成開發環境開發
Python 11
1.4 使用Python分析Excel數據 12
1.4.1 可復用 12
1.4.2 大量數據的需求 12
1.4.3 Python易用易學 12
第2章 變量和簡單數據類型 13
2.1 變量 13
2.1.1 變量的使用 13
2.1.2 變量的命名 14
2.1.3 變量的存儲 15
2.2 Python中的數據類型 18
2.3 數字 19
2.3.1 算術運算 19
2.3.2 比較運算 21
2.3.3 賦值運算 22
2.3.4 位運算 24
2.3.5 運算符的優先級 27
2.3.6 數字計算中常見的函數 28
2.4 字符串 34
2.4.1 截取子串 35
2.4.2 字符串的運算 37
2.4.3 字符串的格式化 38
2.4.4 Python轉義字符 40
2.4.5 字符串常用的函數 42
2.5 字符串和數字相互轉換 43
2.6 代碼中的注釋 44
第3章 控制語句 46
3.1 條件語句 46
3.1.1 簡單if語句 46
3.1.2 else分支的使用 47
3.1.3 elif分支的使用 48
3.1.4 條件語句的嵌套 49
3.2 邏輯運算 50
3.2.1 邏輯運算符 51
3.2.2 邏輯運算符的優先級 53
3.2.3 改寫閏年判斷邏輯 54
3.3 循環語句 54
3.3.1 while語句 54
3.3.2 使用循環的注意事項 56
3.3.3 for語句 57
3.3.4 range函數 58
3.3.5 跳轉關鍵字break、continue和
pass 59
3.3.6 循環的嵌套 61
第4章 列表 64
4.1 列表的基礎概念 64
4.1.1 創建列表 64
4.1.2 列表的遍歷和下標 64
4.2 訪問和操作列表 66
4.2.1 元素的增、刪、查、改 66
4.2.2 截取子列表 67
4.2.3 列表的嵌套 68
4.2.4 列表的其他操作 70
4.3 列表函數 71
4.3.1 常見函數 71
4.3.2 排序函數 72
第5章 元組和集合 76
5.1 元組 76
5.1.1 創建元組 76
5.1.2 遍歷元組 77
5.1.3 修改和刪除元組 78
5.1.4 截取元組 79
5.1.5 其他常見的操作 79
5.1.6 關于元組的函數 80
5.2 集合 80
5.2.1 創建集合 80
5.2.2 新增元素 81
5.2.3 刪除元素 82
5.2.4 判斷元素是否在集合中 84
5.2.5 遍歷集合 84
5.2.6 關于集合的函數 85
第6章 字典 89
6.1 創建字典 89
6.1.1 創建最基本的字典 89
6.1.2 創建空字典 90
6.1.3 使用內置函數dict創建字典 90
6.2 訪問字典 91
6.2.1 訪問字典的值 91
6.2.2 新增/修改字典的值 92
6.2.3 刪除 93
6.3 遍歷字典 94
6.3.1 對鍵的遍歷 94
6.3.2 對值的遍歷 94
6.3.3 對鍵值的遍歷 95
6.4 字典的鍵值數據類型 95
6.4.1 字典對鍵值的要求 95
6.4.2 在鍵值中使用各種數據類型 96
6.4.3 多種數據類型在字典中的
應用 97
6.5 與字典相關的函數 99
第7章 函數 101
7.1 函數的定義 101
7.1.1 定義帶有返回值的函數 103
7.1.2 形參和實參 104
7.2 傳遞參數 104
7.2.1 位置實參 105
7.2.2 關鍵字實參 105
7.2.3 為參數設置默認值 106
7.3 特殊的參數 107
7.3.1 傳遞列表 107
7.3.2 傳遞元組、集合和字典 109
7.3.3 可變參數 110
7.3.4 強制參數位置和關鍵字 113
7.4 函數返回值 113
7.4.1 返回簡單數據類型 114
7.4.2 返回復雜數據類型 114
7.4.3 在循環中返回 115
7.5 函數中的參數 116
7.5.1 傳遞可更改對象與不可更改
對象 116
7.5.2 函數內外變量的可見性 117
7.6 Lambda表達式 118
7.7 把函數放在不同的模塊中 119
7.7.1 將整個模塊導入主程序中 119
7.7.2 導入指定的函數 120
7.8 遞歸函數 121
第8章 類 124
8.1 類的概念 124
8.1.1 定義類和創建對象 124
8.1.2 類的屬性的訪問 126
8.1.3 封裝 129
8.2 繼承 131
8.2.1 抽象 131
8.2.2 繼承中的方法 133
8.2.3 受保護的屬性和方法 135
8.2.4 多重繼承 136
8.2.5 多態 139
8.3 拾遺 140
8.3.1 面向對象編程的內置函數 140
8.3.2 類的內部方法 142
8.3.3 類方法和靜態方法 143
8.4 導入模塊中的類 145
第9章 文件操作和標準庫 148
9.1 文件操作 148
9.1.1 文件的讀取 148
9.1.2 文件的寫入 151
9.1.3 將數據保存為JSON格式 152
9.2 日期時間 156
9.2.1 日期——date類 156
9.2.2 日期時間——datetime類 158
9.2.3 時間差——timedelta類 160
9.3 貨幣格式化 162
第10章 異常 164
10.1 異常的基礎知識 164
10.1.1 Python異常機制 165
10.1.2 except語句 166
10.1.3 else語句和finally語句 167
10.1.4 常見的異常 170
10.2 深入使用異常 172
10.2.1 主動觸發異常 172
10.2.2 自定義異常 173
10.2.3 except語句中的異常排序 174


第2部分 Excel數據分析

第11章 使用xlwings處理Excel文檔 178
11.1 xlwings的簡介和安裝 178
11.1.1 xlwings簡介 178
11.1.2 安裝xlwings 180
11.2 讀/寫Excel文檔 182
11.2.1 讀取Excel單元格數據 182
11.2.2 讀取多行數據 183
11.2.3 將數據寫入Excel 185
11.3 設置單元格 187
11.3.1 字體和格式化 187
11.3.2 邊框 188
11.3.3 合并單元格和拆分單元格 190
11.3.4 調整單元格的寬度和高度 192
11.4 處理一些常見的Excel場景 192
11.4.1 新建和讀/寫多個Excel
文檔 192
11.4.2 在同一個Excel文檔中寫入多個工作表 194
11.4.3 復制數據 194
第12章 數據分析的基礎庫——NumPy 196
12.1 安裝NumPy 197
12.1.1 在Windows下的安裝 197
12.1.2 在PyCharm中使用
NumPy 197
12.1.3 在Linux(Ubuntu)下安裝
NumPy 197
12.2 創建ndarray對象 198
12.2.1 創建ndarray數組 198
12.2.2 創建特殊的ndarray數組 200
12.3 NumPy數組的屬性和數據
類型 204
12.3.1 NumPy數組的屬性 204
12.3.2 NumPy數組的數據類型 205
12.4 NumPy切片和索引 206
12.4.1 一維數組的切片和索引 206
12.4.2 二維數組的切片和索引 207
12.4.3 高級切片和索引 208
12.5 數組的常見處理 210
12.5.1 數據預處理 210
12.5.2 數組重塑 212
12.5.3 數組合并 214
12.6 NumPy數組的運算 215
12.6.1 對元素的運算 215
12.6.2 統計分析 217
12.6.3 篩選元素 218
12.6.4 集合運算 220
12.6.5 排序 221
第13章 Pandas基礎 227
13.1 創建對應的數據結構 227
13.1.1 Series 227
13.1.2 DataFrame 229
13.2 讀/寫Excel數據 233
13.2.1 讀取Excel數據 233
13.2.2 指定讀取Excel的數據
類型 238
13.2.3 寫入Excel 239
13.2.4 xlwings與Pandas的結合 241
13.3 定位數據 243
13.3.1 Series的索引和分片 243
13.3.2 DataFrame的索引和分片 244
13.3.3 loc方法和iloc方法 245
13.4 數據預處理 247
13.4.1 處理默認值 247
13.4.2 去除重復數據 250
13.4.3 數據類型轉換 253
13.5 增、刪、查、改和替換 253
13.5.1 修改元素 253
13.5.2 替換元素 254
13.5.3 刪除 255
13.5.4 新增 257
13.5.5 查找 259
13.6 讓數據運算起來 261
13.6.1 簡易算術運算 261
13.6.2 比較運算 262
13.6.3 匯總運算 263
第14章 Pandas高級應用 269
14.1 修改索引(標簽) 269
14.1.1 重設索引(標簽) 270
14.1.2 將某列設置為索引
(標簽) 270
14.1.3 重命名索引(標簽) 271
14.1.4 樹形索引 272
14.2 為數據排序 273
14.2.1 沒有默認值的排序 273
14.2.2 有默認值的排序 275
14.2.3 數值排名 276
14.3 獲取唯一值 279
14.4 轉換數組 280
14.4.1 轉置 280
14.4.2 轉換視角查看數據——
長表轉寬表 280
14.4.3 寬表轉長表 281
14.5 最重要的數據分析功能——
分組統計 282
14.5.1 分組求筆數與求和——
count方法和sum方法 283
14.5.2 對數據進行聚合運算——
aggregate方法 284
14.6 通過數據透視轉換視角 287
14.6.1 pivot_table方法概述 287
14.6.2 4個常用的參數 288
14.6.3 合計行列 291
14.7 把數據連接在一起 292
14.7.1 3種關聯關系 293
14.7.2 指定關聯字段 295
14.7.3 連接方式 297
14.7.4 處理重復列 299
14.8 把數據合并在一起 300
第15章 數據可視化庫——Matplotlib 302
15.1 給圖表添加坐標系 302
15.1.1 使用面板的add_subplot方法
建立坐標系 304
15.1.2 使用subplot函數建立
坐標系 307
15.1.3 使用subplot2grid函數添加
坐標系 309
15.1.4 使用subplots函數建立
坐標系 310
15.2 設置坐標系和圖表 312
15.2.1 設置坐標軸 312
15.2.2 設置坐標軸的刻度 315
15.2.3 設置網格 318
15.2.4 圖例 320
15.2.5 設置圖表的標題 324
15.2.6 添加數據標簽 327
15.2.7 添加圖表注釋 330
15.2.8 數據表 332
15.3 制作常見的圖表 335
15.3.1 折線圖 335
15.3.2 柱狀圖 338
15.3.3 條形圖 343
15.3.4 散點圖和氣泡圖 345
15.3.5 面積圖 347
15.3.6 雷達圖 349
15.3.7 餅圖 352
15.4 其他常用的圖表技術 356
15.4.1 雙軸圖表 356
15.4.2 圖表的樣式 358
15.4.3 圖表的保存 359
15.5 將圖片保存到Excel中 360
第16章 數據可視化庫——Seaborn 363
16.1 安裝和初識Seaborn 363
16.2 使用Seaborn繪制常見的圖表 364
16.2.1 折線圖和點線圖 364
16.2.2 柱狀圖和條形圖 368
16.2.3 散點圖 371


第3部分 Excel數據分析實踐

第17章 電商銷售數據分析 374
17.1 準備材料和分析業務 374
17.1.1 銷售明細分析 374
17.1.2 經銷員信息分析 375
17.1.3 產品信息分析 375
17.1.4 數據的關聯關系 375

17.2 數據分析流程 376
17.2.1 讀取Excel數據和數據
預處理 376
17.2.2 數據分析 377
17.2.3 繪制圖表 384
17.2.4 將數據分析的結果保存到
Excel中 392

第18章 個人貸款數據分析 397
18.1 業務分析 397
18.2 讀取Excel數據 399
18.3 查找數據 400
18.3.1 查找某一業務品種和不良
貸款數據 400
18.3.2 根據客戶名稱進行模糊
查找 401
18.3.3 查找當月發生的和當季到期的貸款 402
18.3.4 找到現存貸款余額最大的10筆貸款 403
18.4 分組統計 403
18.4.1 按照業務品種進行分組
統計 403

18.4.2 按照業務品種和其細分進行
分組統計 404
18.4.3 按照客戶經理進行分組
統計 405
18.5 繪制圖表 406
18.5.1 繪制客戶經理業務狀況
圖表 406
18.5.2 根據業務品種繪制業務發生筆數的餅圖 407
18.5.3 測試圖表 408
附錄A 查看環境變量 410
附錄B Python關鍵字和內置函數
序: