NumPy
NumPy(Numerical Python的簡稱)是Python科學計算的基礎包。算法
涵蓋如下功能: 數據庫
- 快速高效的多維數組對象ndarray。
- 用於對數組執行元素級計算以及直接對數組執行數學運算的函數。
- 用於讀寫硬盤上基於數組的數據集的工具。
- 線性代數運算、傅里葉變換,以及隨機數生成。
pandas
pandas提供了快速便捷處理結構化數據的大量數據結構和函數。數組
pandas兼具NumPy高性能的數組計算功能以及電子表格和關係型數據庫(如SQL)靈活的數據處理功能。它提供了複雜精細的索引功能,能更加便捷地完成重塑、切片和切塊、聚合以及選取數據子集等操做。數據結構
matplotlib
matplotlib是最流行的用於繪製圖表和其它二維數據可視化的Python庫。機器學習
SciPy
SciPy是一組專門解決科學計算中各類標準問題域的包的集合.函數
主要涵蓋如下包:工具
- scipy.integrate:數值積分例程和微分方程求解器。
- scipy.linalg:擴展了由numpy.linalg提供的線性代數例程和矩陣分解功能。
- scipy.optimize:函數優化器(最小化器)以及根查找算法。
- scipy.signal:信號處理工具。
- scipy.sparse:稀疏矩陣和稀疏線性系統求解器。
- scipy.special:SPECFUN(這是一個實現了許多經常使用數學函數(如伽瑪函數)的Fortran庫)的包裝器。
- scipy.stats:標準連續和離散機率分佈(如密度函數、採樣器、連續分佈函數等)、各類統計檢驗方法,以及更好的描述統計法。
scikit-learn
scikit-learn成爲了Python的通用機器學習工具包。性能
它的子模塊包括:學習
- 分類:SVM、近鄰、隨機森林、邏輯迴歸等等。
- 迴歸:Lasso、嶺迴歸等等。
- 聚類:k-均值、譜聚類等等。
- 降維:PCA、特徵選擇、矩陣分解等等。
- 選型:網格搜索、交叉驗證、度量。
- 預處理:特徵提取、標準化。
statsmodels
statsmodels是一個統計分析包,起源於斯坦福大學統計學教授Jonathan Taylor,他設計了多種流行於R語言的迴歸分析模型。優化
statsmodels包含經典統計學和經濟計量學的算法。包括以下子模塊:
- 迴歸模型:線性迴歸,廣義線性模型,健壯線性模型,線性混合效應模型等等。
- 方差分析(ANOVA)。
- 時間序列分析:AR,ARMA,ARIMA,VAR和其它模型。
- 非參數方法: 核密度估計,核迴歸。
- 統計模型結果可視化。