産品特色
編輯推薦
實用的Python開源模塊的大集閤;
簡單易懂、示例豐富的數據分析教程;
掌握數據可視化、機器學習等高端主題;
新手變身數據分析專傢的上好讀本;
內容簡介
作為一種高級程序設計語言,Python憑藉其簡潔、易讀及可擴展性日漸成為程序設計領域備受推崇的語言。同時,Python語言的數據分析功能也逐漸為大眾所認可。
本書是一本介紹如何用Python進行數據分析的學習指南。全書共12章,從Python程序庫入門、NumPy數組、matplotlib和pandas開始,陸續介紹瞭數據加工、數據處理和數據可視化等內容。同時,本書還介紹瞭信號處理、數據庫、文本分析、機器學習、互操作性和性能優化等高級主題。在本書的結尾,還采用3個附錄的形式為讀者補充瞭一些重要概念、常用函數以及在綫資源等重要內容。
本書示例豐富、簡單易懂,非常適閤對Python語言感興趣或者想要使用Python語言進行數據分析的讀者參考閱讀。
作者簡介
Ivan Idris,實驗物理學碩士,學位論文側重於應用計算機科學。畢業後,他曾經效力於多傢公司,從事Java開發、數據倉庫開發以及QA分析等方麵的工作;目前,他的興趣主要集中在商業智能、大數據和雲計算等專業領域。
Ivan Idris以編寫簡潔可測試的程序代碼以及撰寫有趣的技術文章為樂,同時也是Packt齣版社NumPy Beginner's Guide-Second Edition、NumPy Cookbook和Learning NumPy Array等書籍的作者。
目錄
第1章 Python程序庫入門 1
1.1 本書用到的軟件 2
1.1.1 軟件的安裝和設置 2
1.1.2 Windows平颱 2
1.1.3 Linux平颱 3
1.1.4 Mac OS X平颱 4
1.2 從源代碼安裝NumPy、SciPy、matplotlib和IPython 6
1.3 用setuptools安裝 7
1.4 NumPy數組 7
1.5 一個簡單的應用 8
1.6 將IPython用作shell 11
1.7 學習手冊頁 13
1.8 IPython notebook 14
1.9 從何處尋求幫助和參考資料 14
1.10 小結 15
第2章 NumPy數組 16
2.1 NumPy數組對象 16
2.2 創建多維數組 18
2.3 選擇NumPy數組元素 18
2.4 NumPy的數值類型 19
2.4.1 數據類型對象 21
2.4.2 字符碼 21
2.4.3 Dtype構造函數 22
2.4.4 dtype屬性 23
2.5 一維數組的切片與索引 23
2.6 處理數組形狀 24
2.6.1 堆疊數組 27
2.6.2 拆分NumPy數組 30
2.6.3 NumPy數組的屬性 33
2.6.4 數組的轉換 39
2.7 創建數組的視圖和拷貝 40
2.8 花式索引 41
2.9 基於位置列錶的索引方法 43
2.10 用布爾型變量索引NumPy數組 44
2.11 NumPy數組的廣播 46
2.12 小結 49
第3章 統計學與綫性代數 50
3.1 Numpy和Scipy模塊 50
3.2 用NumPy進行簡單的描述性統計計算 55
3.3 用NumPy進行綫性代數運算 57
3.3.1 用NumPy求矩陣的逆 57
3.3.2 用NumPy解綫性方程組 59
3.4 用NumPy計算特徵值和特徵嚮量 61
3.5 NumPy隨機數 63
3.5.1 用二項式分布進行博弈 63
3.5.2 正態分布采樣 66
3.5.3 用SciPy進行正態檢驗 67
3.6 創建掩碼式NumPy數組 70
3.7 小結 75
第4章 pandas入門 76
4.1 pandas的安裝與概覽 77
4.2 pandas數據結構之DataFrame 78
4.3 pandas數據結構之Series 81
4.4 利用pandas查詢數據 85
4.5 利用pandas的DataFrame進行統計計算 89
4.6 利用pandas的DataFrame實現數據聚閤 91
4.7 DataFrame的串聯與附加操作 95
4.8 連接DataFrames 96
4.9 處理缺失數據問題 99
4.10 處理日期數據 102
4.11 數據透視錶 106
4.12 訪問遠程數據 107
4.13 小結 109
第5章 數據的檢索、加工與存儲 110
5.1 利用NumPy和pandas對CSV文件進行寫操作 110
5.2 NumPy.npy與pandas DataFrame 112
5.3 使用PyTables存儲數據 115
5.4 Pandas DataFrame與HDF5倉庫之間的讀寫操作 118
5.5 使用pandas讀寫Excel文件 120
5.6 使用REST Web服務和JSON 123
5.7 使用pandas讀寫JSON 124
5.8 解析RSS和Atom訂閱 126
5.9 使用Beautiful Soup解析HTML 127
5.10 小結 134
第6章 數據可視化 136
6.1 matplotlib的子庫 137
6.2 matplotlib繪圖入門 137
6.3 對數圖 139
6.4 散點圖 141
6.5 圖例和注解 143
6.6 三維圖 145
6.7 pandas繪圖 148
6.8 時滯圖 150
6.9 自相關圖 151
6.10 Plot.ly 153
6.11 小結 155
第7章 信號處理與時間序列 156
7.1 statsmodels子庫 157
7.2 移動平均值 157
7.3 窗口函數 159
7.4 協整的定義 161
7.5 自相關 164
7.6 自迴歸模型 166
7.7 ARMA模型 170
7.8 生成周期信號 172
7.9 傅裏葉分析 174
7.10 譜分析 177
7.11 濾波 177
7.12 小結 179
第8章 應用數據庫 180
8.1 基於sqlite3的輕量級訪問 181
8.2 通過pandas訪問數據庫 183
8.3 SQLAlchemy 185
8.3.1 SQLAlchemy的安裝和配置 186
8.3.2 通過SQLAlchemy填充數據庫 188
8.3.3 通過SQLAlchemy查詢數據庫 189
8.4 Pony ORM 191
8.5 Dataset:懶人數據庫 192
8.6 PyMongo與MongoDB 195
8.7 利用Redis存儲數據 196
8.8 Apache Cassandra 197
8.9 小結 201
第9章 分析文本數據和社交媒體 203
9.1 安裝NLTK 203
9.2 濾除停用字、姓名和數字 206
9.3 詞袋模型 208
9.4 詞頻分析 209
9.5 樸素貝葉斯分類 211
9.6 情感分析 214
9.7 創建詞雲 217
9.8 社交網絡分析 222
9.9 小結 224
第10章 預測性分析與機器學習 225
10.1 scikit-learn概貌 226
10.2 預處理 228
10.3 基於邏輯迴歸的分類 230
10.4 基於支持嚮量機的分類 232
10.5 基於ElasticNetCV的迴歸分析 235
10.6 支持嚮量迴歸 237
10.7 基於相似性傳播算法的聚類分析 240
10.8 均值漂移算法 242
10.9 遺傳算法 244
10.10 神經網絡 249
10.11 決策樹 251
10.12 小結 253
第11章 Python生態係統的外部環境和雲計算 255
11.1 與MATLAB/Octave交換信息 256
11.2 Installing rpy2安裝rpy2 257
11.3 連接R 257
11.4 為Java傳遞NumPy數組 260
11.5 集成SWIG和NumPy 261
11.6 集成Boost和Python 264
11.7 通過f2py使用Fortran代碼 266
11.8 配置榖歌應用引擎 267
11.9 在PythonAnywhere上運行程序 269
11.10 使用Wakari 270
11.11 小結 271
第12章 性能優化、性能分析與並發性 272
12.1 代碼的性能分析 272
12.2 安裝Cython 277
12.3 調用C代碼 281
12.4 利用multiprocessing創建進程池 283
12.5 通過Joblib提高for循環的並發性 286
12.6 比較Bottleneck函數與NumPy函數 287
12.7 通過Jug實現MapReduce 289
12.8 安裝MPI for Python 292
12.9 IPython Parallel 292
12.10 小結 296
附錄A 重要概念 298
附錄B 常用函數 303
附錄C 在綫資源 309
前言/序言
Python數據分析 下載 mobi epub pdf txt 電子書