Python的五大常用庫——numpy,pandas,matplotlib等
Numpy
Numpy 是python科學計算的基礎包,本書大部分內容都基於numpy以及構建於其上的庫。其功能有:
快速高效的多維陣列物件ndarray
用於對陣列執行元素級計算以及直接對陣列執行數字運算的函式
用於讀寫硬碟上基於陣列的資料集的工具
線性代數運算,傅立葉變換,以及隨機數生成
用於將C,C++,Fortran程式碼整合到python的工具
除了為python提供快速的陣列處理能力,numpy在資料分析方面還有一個主要作用,即作為在演算法之間傳遞資料的容器。對於數值型資料,numpy 陣列在儲存和處理資料時要比內建的python資料結構高效得多。
Pandas
Pandas提供了使我們能夠快速便捷地處理結構化資料的大量資料結構和函式。
它是使python成為強大而高效的資料分析環境的重要因素之一。
本書用的最多的pandas物件是dataframe,它是一個面向列的二維表結構,且含有行標和列標。
Pandas兼具numpy高效能的陣列計算功能以及電子表格和關係型資料庫(SQL)靈活的資料處理功能。它提供了複雜精細的索引功能,以便更為便捷地完成重塑,切片和切塊聚合以及選取資料子集等操作。
Matplotlib
Matplotlib是最流行的
用於繪製資料圖表的python庫
。它非常適合創建出版物上用的圖表。它和ipython結合得很好,因而提供了一種非常好用的互動式資料繪圖環境。繪製的圖表也是互動式,可以利用繪製視窗中的工具欄放大圖表中的某個區域對整個圖表進行平移瀏覽。
Ipython
Ipython是python科學計算標準工具集的組成部分,它將其他所有東西聯絡到了一起。它為互動式和探索式計算提供了一個強健而高效的環境。它是一個增強的python shell,目的是提高編寫,測試,除錯python程式碼的速度。
它主要用於互動式資料處理和利用matplotlib對資料進行視覺化處理。
除標準的基於終端的ipython shell外,該專案還提供了:
一個類似於mathematica的HTML筆記本
一個基於Qt框架的GUI控制檯,其中含有繪圖,多行編輯以及語法高亮顯示等功能。
用於互動式並行和分散式計算的基礎架構
Scipy
Scipy是一組專門解決科學計算中各種標準問題域的包的集合,主要包括下面這些包:
Scipy。integrate:數值積分例和微分方程求解器
Scipy。linalg:擴充套件了由numpy。linalg提供的線性代數例程和矩陣分解功能
Scipy。optimize:函式最佳化器(最小化器)以及根查詢演算法
Scipy。signal:訊號處理工具
Scipy。sparse:稀疏矩陣和稀疏線性系統求解器
引入慣例:
Python社群已經廣泛接受了一些常用模組的命名慣例:
Import numpy as np
Import pandas as pd
Import matplotlib.pyplot as plt