本文重點(diǎn)介紹pyhon最常用的幾個(gè)庫(kù):
1. SymPy
SymPy是python一個(gè)科學(xué)計(jì)算庫(kù)抢腐,有一套強(qiáng)大的科學(xué)計(jì)算體系怠惶,覆蓋了從基本的符號(hào)運(yùn)算到計(jì)算數(shù)學(xué)、代數(shù)學(xué)家制、離散數(shù)學(xué)、量子物理等多個(gè)領(lǐng)域泡一〔梗可以完成諸如多項(xiàng)式求值、求極限鼻忠、解方程涵但、微分方程、級(jí)數(shù)展開(kāi)帖蔓、矩陣運(yùn)算等等計(jì)算問(wèn)題矮瘟。
雖然Matlab的類(lèi)似科學(xué)計(jì)算能力也很強(qiáng)大,但是Python以其語(yǔ)法簡(jiǎn)單塑娇、易上手澈侠、異常豐富的三方庫(kù)生態(tài),個(gè)人認(rèn)為可以更優(yōu)雅地解決日常遇到的各種計(jì)算問(wèn)題埋酬。
2. Numpy
Numpy是用于數(shù)據(jù)分析哨啃、機(jī)器學(xué)習(xí)烧栋、科學(xué)計(jì)算的重要軟件包。它極大的簡(jiǎn)化了向量矩的操作及處理拳球。Python的不少數(shù)據(jù)處理軟件包依賴于Numpy作為其基礎(chǔ)架構(gòu)的核心部分(如Scikit-learn, Scipy, Pandas和tensflow等)
3. Scipy
Scipy是一個(gè)科學(xué)計(jì)算工具包审姓,可以處理插值、積分祝峻、優(yōu)化魔吐、圖像處理、常微分方程數(shù)據(jù)解的求解莱找、信息處理等問(wèn)題酬姆。它是基于Numpy搭建的∷尉啵可用于有效計(jì)算Numpy矩陣轴踱,使Numpy和Scipy協(xié)同工作,高效解決問(wèn)題
4. Scikit Learn(sklearn)
Sklearn是一個(gè)機(jī)器學(xué)習(xí)包谚赎,它是基于Numpy, Scipy和matplotlib搭建。它的主要功能分為六大部分:分類(lèi)诱篷、回歸壶唤、聚類(lèi)、數(shù)據(jù)降維棕所、模型選擇和數(shù)據(jù)預(yù)處理闸盔,性能也很不錯(cuò)。
不過(guò)琳省,sklearn不支持深度學(xué)習(xí)和強(qiáng)化學(xué)習(xí)迎吵,不支持圖模型和序列預(yù)測(cè),同時(shí)也不支持python之外的語(yǔ)言针贬,不支持PyPy也不支持GPU加速击费。
常用子模塊有:
分類(lèi) :SVM , K近鄰 桦他,隨機(jī)森林 蔫巩, 邏輯回歸等。
回歸 :Lasso ,嶺回歸 等快压。
聚類(lèi) :K-means ,譜聚類(lèi)等圆仔。
降維 :PCA ,特征選擇 ,矩陣分解等蔫劣。
模型選擇 :網(wǎng)格搜索坪郭, 交叉驗(yàn)證 ,指標(biāo)矩陣脉幢。
預(yù)處理: 特征提取歪沃,正態(tài)化信姓。
5. Statsmodels
Statsmodels用于擬合統(tǒng)計(jì)模型、參數(shù)據(jù)估計(jì)绸罗、假設(shè)檢驗(yàn)意推、不確定性評(píng)估以及數(shù)據(jù)探索和可視化。相比sklearn珊蟀,statsmodels更側(cè)重于統(tǒng)計(jì)推理菊值、p值和不確定性評(píng)價(jià)。常用子模塊包括:
回歸模型:線性回歸 育灸,通用線性回歸腻窒,魯邦線性模型 ,線性混合效應(yīng)模型等磅崭。
方差分析(ANOVA)
時(shí)間序列分析:AR , ARMA , ARIMA , VAR等儿子。
非參數(shù)方法: 核密度估計(jì) , 核回歸砸喻。
統(tǒng)計(jì)模型結(jié)果可視化柔逼。
6. Matplotlib
Matplotlib是python中類(lèi)似于matlab的繪圖工具,實(shí)際上matplotlib有一套完全依照MATLAB的函數(shù)形式的繪圖接口割岛,在matplot.pyplot模塊中愉适,這套函數(shù)接口方便MATLAB用戶過(guò)度到matplotlib
7. Seaborn
Seaborn在matplotlib基礎(chǔ)上進(jìn)行封裝的,但seaborn是針對(duì)統(tǒng)計(jì)繪圖的癣漆。一般來(lái)說(shuō)维咸,seaborn能滿足數(shù)據(jù)分析90%的的繪圖需求。
Seaborn旨在使可視化成為探索和理解數(shù)據(jù)的核心部分惠爽。其面向數(shù)據(jù)集的繪圖功能對(duì)包含整個(gè)數(shù)據(jù)集的數(shù)據(jù)框和數(shù)據(jù)組進(jìn)行操作癌蓖,并在內(nèi)部執(zhí)行必要的語(yǔ)義映射和統(tǒng)計(jì)聚合,以生成信息圖婚肆。
Seaborn可以做熱力圖租副、散點(diǎn)圖、直方圖旬痹、箱形圖附井、樹(shù)形圖、熱點(diǎn)圖等等
8. Pandas
Pandas是基于Numpy數(shù)組構(gòu)建的两残,專(zhuān)門(mén)為處理表格和混雜數(shù)據(jù)設(shè)的永毅,而Numpy更適合處理統(tǒng)一的數(shù)據(jù)數(shù)組數(shù)據(jù)。
參考資料: