利用Python進行數據分析原書第2版PDF下載,Python量化投資
書籍索取請聯系我們
請會Python抓取PDF內的財務報表,然后將財務報表轉換為EXCEL表格數據的程序高手聯系我們
內容簡介 · · · · · ·
本書由Python pandas項目創始人Wes McKinney親筆撰寫,詳細介紹利用Python進行操作、處理、清洗和規整數據等方面的具體細節和基本要點。第2版針對Python 3.6進行全面修訂和更新,涵蓋新版的pandas、NumPy、IPython和Jupyter,并增加大量實際案例,可以幫助你高效解決一系列數據分析問題。
第2版中的主要更新包括:
? 所有的代碼,包括把Python的教程更新到了Python 3.6版本(第1版中使用的是Python 2.7)
? 更新了Python第三方發布版Anaconda和其他所需Python包的安裝指引
? 更新pandas庫到2017年的新版
? 新增一章,關于更多高級pandas工具和一些使用提示
? 新增statsmodels和scikit-learn的簡明使用介紹
作者簡介 · · · · · ·
Wes McKinney 是流行的Python開源數據分析庫pandas的創始人。他是一名活躍的演講者,也是Python數據社區和Apache軟件基金會的Python/C 開源開發者。目前他在紐約從事軟件架構師工作。
目錄 · · · · · ·
前言1
第1章 準備工作7
1.1 本書內容7
1.1.1 什么類型的數據7
1.2 為何利用Python進行數據分析8
1.2.1 Python作為膠水8
1.2.2 解決“雙語言”難題8
1.2.3 為何不使用Python9
1.3 重要的Python庫9
1.3.1 NumPy9
1.3.2 pandas10
1.3.3matplotlib11
1.3.4 IPython與Jupyter11
1.3.5 SciPy12
1.3.6scikit-learn12
1.3.7statsmodels13
1.4 安裝與設置13
1.4.1 Windows14
1.4.2 Apple(OS X和macOS)14
1.4.3 GNU/Linux14
1.4.4 安裝及更新Python包15
1.4.5 Python 2和Python 316
1.4.6 集成開發環境和文本編輯器16
1.5 社區和會議17
1.6 快速瀏覽本書17
1.6.1 代碼示例18
1.6.2 示例數據18
1.6.3導入約定18
1.6.4術語19
第2章 Python語言基礎、IPython及Jupyter notebook20
2.1 Python解釋器21
2.2 IPython基礎22
2.2.1 運行IPython命令行22
2.2.2 運行 Jupyter notebook23
2.2.3 Tab補全25
2.2.4 內省27
2.2.5 %run命令28
2.2.6 執行剪貼板中的程序30
2.2.7 終端快捷鍵30
2.2.8 關于魔術命令31
2.2.9 matplotlib集成33
2.3 Python語言基礎34
2.3.1 語言語義34
2.3.2 標量類型42
2.3.3 控制流49
第3章 內建數據結構、函數及文件54
3.1 數據結構和序列54
3.1.1 元組54
3.1.2 列表57
3.1.3 內建序列函數61
3.1.4 字典64
3.1.5集合67
3.1.6 列表、集合和字典的推導式69
3.2 函數72
3.2.1 命名空間、作用域和本地函數72
3.2.2 返回多個值73
3.2.3 函數是對象74
3.2.4 匿名(Lambda)函數75
3.2.5 柯里化:部分參數應用76
3.2.6 生成器77
3.2.7 錯誤和異常處理79
3.3 文件與操作系統82
3.3.1 字節與Unicode文件85
3.4 本章小結86
第4章 NumPy基礎:數組與向量化計算87
4.1 NumPy ndarray:多維數組對象89
4.1.1 生成ndarray90
4.1.2 ndarray的數據類型92
4.1.3 NumPy數組算術94
4.1.4 基礎索引與切片95
4.1.5 布爾索引100
4.1.6 神奇索引103
4.1.7 數組轉置和換軸104
4.2 通用函數:快速的逐元素數組函數106
4.3 使用數組進行面向數組編程109
4.3.1 將條件邏輯作為數組操作110
4.3.2 數學和統計方法111
4.3.3 布爾值數組的方法113
4.3.4 排序114
4.3.5 唯一值與其他集合邏輯115
4.4 使用數組進行文件輸入和輸出115
4.5 線性代數116
4.6 偽隨機數生成118
4.7 示例:隨機漫步120
4.7.1 一次性模擬多次隨機漫步121
4.8 本章小結122
第5章 pandas入門123
5.1 pandas數據結構介紹123
5.1.1 Series123
5.1.2DataFrame128
5.1.3 索引對象134
5.2 基本功能135
5.2.1 重建索引136
5.2.2 軸向上刪除條目138
5.2.3 索引、選擇與過濾140
5.2.4 整數索引144
5.2.5 算術和數據對齊145
5.2.6 函數應用和映射150
5.2.7 排序和排名152
5.2.8 含有重復標簽的軸索引155
5.3 描述性統計的概述與計算157
5.3.1 相關性和協方差159
5.3.2 唯一值、計數和成員屬性161
5.4 本章小結164
第6章 數據載入、存儲及文件格式165
6.1 文本格式數據的讀寫165
6.1.1 分塊讀入文本文件171
6.1.2 將數據寫入文本格式172
6.1.3 使用分隔格式174
6.1.4 JSON數據176
6.1.5 XML和HTML:網絡抓取177
6.2 二進制格式180
6.2.1 使用HDF5格式181
6.2.2 讀取Microsoft Excel文件183
6.3 與Web API交互184
6.4 與數據庫交互186
6.5 本章小結187
第7章 數據清洗與準備188
7.1 處理缺失值188
7.1.1 過濾缺失值189
7.1.2 補全缺失值191
7.2 數據轉換194
7.2.1 刪除重復值194
7.2.2 使用函數或映射進行數據轉換195
7.2.3 替代值197
7.2.4 重命名軸索引198
7.2.5 離散化和分箱199
7.2.6 檢測和過濾異常值202
7.2.7 置換和隨機抽樣203
7.2.8 計算指標/虛擬變量204
7.3 字符串操作207
7.3.1 字符串對象方法208
7.3.2 正則表達式210
7.3.3 pandas中的向量化字符串函數213
7.4 本章小結215
第8章 數據規整:連接、聯合與重塑216
8.1 分層索引216
8.1.1重排序和層級排序219
8.1.2 按層級進行匯總統計220
8.1.3 使用DataFrame的列進行索引220
8.2 聯合與合并數據集221
8.2.1 數據庫風格的DataFrame連接222
8.2.2 根據索引合并226
8.2.3 沿軸向連接230
8.2.4 聯合重疊數據235
8.3 重塑和透視236
8.3.1 使用多層索引進行重塑236
8.3.2 將“長”透視為“寬”240
8.3.3 將“寬”透視為“長”242
8.4 本章小結244
第9章 繪圖與可視化245
9.1 簡明matplotlib API入門245
9.1.1 圖片與子圖246
9.1.2 顏色、標記和線類型250
9.1.3 刻度、標簽和圖例252
9.1.4 注釋與子圖加工255
9.1.5 將圖片保存到文件258
9.1.6 matplotlib設置258
9.2 使用pandas和seaborn繪圖259
9.2.1 折線圖259
9.2.2 柱狀圖262
9.2.3 直方圖和密度圖266
9.2.4 散點圖或點圖269
9.2.5 分面網格和分類數據270
9.3 其他Python可視化工具271
9.4 本章小結272
第10章 數據聚合與分組操作274
10.1 GroupBy機制274
10.1.1 遍歷各分組278
10.1.2 選擇一列或所有列的子集279
10.1.3 使用字典和Series分組280
10.1.4 使用函數分組281
10.1.5 根據索引層級分組282
10.2 數據聚合282
10.2.1 逐列及多函數應用284
10.2.2 返回不含行索引的聚合數據287
10.3 應用:通用拆分-應用-聯合288
10.3.1 壓縮分組鍵290
10.3.2 分位數與桶分析291
10.3.3 示例:使用指定分組值填充缺失值292
10.3.4 示例:隨機采樣與排列294
10.3.5 示例:分組加權平均和相關性296
10.3.6 示例:逐組線性回歸298
10.4 數據透視表與交叉表298
10.4.1 交叉表:crosstab301
10.5 本章小結302
第11章 時間序列303
11.1 日期和時間數據的類型及工具303
11.1.1 字符串與datetime互相轉換305
11.2 時間序列基礎307
11.2.1 索引、選擇、子集308
11.2.2 含有重復索引的時間序列311
11.3 日期范圍、頻率和移位312
11.3.1 生成日期范圍313
11.3.2 頻率和日期偏置316
11.3.3 移位(前向和后向)日期317
11.4 時區處理320
11.4.1 時區的本地化和轉換320
11.4.2 時區感知時間戳對象的操作323
11.4.3 不同時區間的操作324
11.5 時間區間和區間算術324
11.5.1 區間頻率轉換326
11.5.2 季度區間頻率327
11.5.3 將時間戳轉換為區間(以及逆轉換)329
11.5.4 從數組生成PeriodIndex330
11.6 重新采樣與頻率轉換332
11.6.1 向下采樣334
11.6.2 向上采樣與插值336
11.6.3 使用區間進行重新采樣337
11.7 移動窗口函數339
11.7.1 指數加權函數342
11.7.2 二元移動窗口函數343
11.7.3 用戶自定義的移動窗口函數344
11.8 本章小結344
第12章 高階pandas346
12.1 分類數據346
12.1.1 背景和目標346
12.1.2 pandas中的Categorical類型348
12.1.3 使用Categorical對象進行計算350
12.1.4 分類方法352
12.2 高階GroupBy應用355
12.2.1 分組轉換和“展開”GroupBy355
12.2.2 分組的時間重新采樣359
12.3 方法鏈技術361
12.3.1 pipe方法362
12.4 本章小結363
第13章 Python建模庫介紹364
13.1 pandas與建模代碼的結合364
13.2 使用Patsy創建模型描述367
13.2.1 Patsy公式中的數據轉換369
13.2.2 分類數據與Patsy371
13.3 statsmodels介紹373
13.3.1 評估線性模型374
13.3.2 評估時間序列處理377
13.4 scikit-learn介紹377
13.5 繼續你的教育381
第14章 數據分析示例382
14.1 從Bitly獲取1.USA.gov數據382
14.1.1 純Python時區計數383
14.1.2 使用pandas進行時區計數385
14.2 MovieLens 1M數據集392
14.2.1 測量評價分歧396
14.3 美國1880~2010年的嬰兒名字397
14.3.1分析名字趨勢402
14.4 美國農業部食品數據庫410
14.5 2012年聯邦選舉委員會數據庫416
14.5.1 按職業和雇主的捐獻統計419
14.5.2 捐贈金額分桶421
14.5.3 按州進行捐贈統計423
14.6 本章小結424
附錄A 高階NumPy425
附錄B 更多IPython系統相關內容457
短評 · · · · · ·
一、非常經典的一本Python數據分析書,每一章之間有遞進關系,適合Python入門()如《Python編程,從入門到實踐》)之后閱讀,本書專門針對數據分析領域的。 我細致地讀了一遍,敲了一遍代碼,一開始沒有頭緒,進展緩慢,后來逐漸明朗了。 學習編程要多實踐,這對沒有基礎的人來說有困難,因為無從下手。我的體會是,在你基礎不牢的時候,就多看,多記,多總結,搭建自己的思路框架。
二、看了此書,再回頭看之前寫project 從 StackOverflow 搬下來的看不懂的 code 都能看懂了(
三、如果不拿pandas用于實際工作中的話,會覺得這本書一般般,但如果真的需要用到pandas了,這本書絕對是五星好評的必讀書籍!還得需要舉一反三多熟練!
四、這本書和《Python Data Science Cookbook》中Pandas部分各有千秋又相得益彰。PDSC讀起來前后銜接非常出色,而且能夠把知識點講透,精確爆破讀者腦海中自然而然產生的疑難點,但也正如本書前言所說的,適合Python進階者學習?!独肞ython進行數據分析》則在知識細分方面尤其到位,以至于會產生只見樹木不見森林之感。二者相互結合再好不過了。
五、索引設置確實比r當年剛剛設計dataframe高級了不少,但是分組基本是因子的意思。本書是入門pandas和numpy的好書,跟python本身關系不大吧
暫無評論內容