成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

盤(pán)點(diǎn)七個(gè)重要的Python庫(kù)

開(kāi)發(fā) 后端
對(duì)于那些對(duì)Python數(shù)據(jù)生態(tài)系統(tǒng)不太熟悉的人士,我將簡(jiǎn)要地介紹一部分重要的庫(kù)。

 

01 NumPy

http://numpy.org

NumPy是Numerical Python的簡(jiǎn)寫(xiě),是Python數(shù)值計(jì)算的基石。它提供多種數(shù)據(jù)結(jié)構(gòu)、算法以及大部分涉及Python數(shù)值計(jì)算所需的接口。NumPy還包括其他內(nèi)容:

  •  快速、高效的多維數(shù)組對(duì)象ndarray
  •  基于元素的數(shù)組計(jì)算或數(shù)組間數(shù)學(xué)操作函數(shù)
  •  用于讀寫(xiě)硬盤(pán)中基于數(shù)組的數(shù)據(jù)集的工具
  •  線(xiàn)性代數(shù)操作、傅里葉變換以及隨機(jī)數(shù)生成

成熟的C語(yǔ)言API,允許Python拓展和本地的C或C++代碼訪(fǎng)問(wèn)NumPy的數(shù)據(jù)結(jié)構(gòu)和計(jì)算設(shè)施。

除了NumPy賦予Python的快速數(shù)組處理能力之外,NumPy的另一個(gè)主要用途是在算法和庫(kù)之間作為數(shù)據(jù)傳遞的數(shù)據(jù)容器。對(duì)于數(shù)值數(shù)據(jù),NumPy數(shù)組能夠比Python內(nèi)建數(shù)據(jù)結(jié)構(gòu)更為高效地存儲(chǔ)和操作數(shù)據(jù)。

此外,用底層語(yǔ)言編寫(xiě)的庫(kù),例如用C或Fortran編寫(xiě)的庫(kù),可以在NumPy數(shù)組存儲(chǔ)的數(shù)據(jù)上直接操作,而無(wú)須將數(shù)據(jù)復(fù)制到其他內(nèi)存中后再操作。因此,許多Python的數(shù)值計(jì)算工具將NumPy數(shù)組作為基礎(chǔ)數(shù)據(jù)結(jié)構(gòu),或與NumPy進(jìn)行無(wú)縫互操作。

02 pandas

http://pandas.pydata.org

pandas提供了高級(jí)數(shù)據(jù)結(jié)構(gòu)和函數(shù),這些數(shù)據(jù)結(jié)構(gòu)和函數(shù)的設(shè)計(jì)使得利用結(jié)構(gòu)化、表格化數(shù)據(jù)的工作快速、簡(jiǎn)單、有表現(xiàn)力。它出現(xiàn)于2010年,幫助Python成為強(qiáng)大、高效的數(shù)據(jù)分析環(huán)境。常用的pandas對(duì)象是DataFrame,它是用于實(shí)現(xiàn)表格化、面向列、使用行列標(biāo)簽的數(shù)據(jù)結(jié)構(gòu);以及Series,一種一維標(biāo)簽數(shù)組對(duì)象。

pandas將表格和關(guān)系型數(shù)據(jù)庫(kù)(例如SQL)的靈活數(shù)據(jù)操作能力與NumPy的高性能數(shù)組計(jì)算的理念相結(jié)合。它提供復(fù)雜的索引函數(shù),使得數(shù)據(jù)的重組、切塊、切片、聚合、子集選擇更為簡(jiǎn)單。由于數(shù)據(jù)操作、預(yù)處理、清洗在數(shù)據(jù)分析中是重要的技能,pandas將是重要主題。

介紹一點(diǎn)背景知識(shí),早在2008年,我在一家量化投資企業(yè)——AQR資本管理公司供職時(shí),便開(kāi)始了pandas的開(kāi)發(fā)。那時(shí)候,我有一些獨(dú)特的需求是工具清單上任何單個(gè)工具無(wú)法滿(mǎn)足的:

  • 帶有標(biāo)簽軸,支持自動(dòng)化或顯式數(shù)據(jù)對(duì)齊功能的數(shù)據(jù)結(jié)構(gòu)——這可以防止未對(duì)齊數(shù)據(jù)和不同數(shù)據(jù)源的不同索引數(shù)據(jù)所引起的常見(jiàn)錯(cuò)誤
  •  集成時(shí)間序列函數(shù)功能
  •  能夠同時(shí)處理時(shí)間序列數(shù)據(jù)和非時(shí)間序列數(shù)據(jù)的統(tǒng)一數(shù)據(jù)結(jié)構(gòu)
  •  可以保存元數(shù)據(jù)的算術(shù)操作和簡(jiǎn)化
  •  靈活處理缺失數(shù)據(jù)
  •  流行數(shù)據(jù)庫(kù)(例如基于SQL的數(shù)據(jù)庫(kù))中的合并等關(guān)系型操作

我想將以上的工作在同一個(gè)地方完成,最好還能在一個(gè)擁有通用軟件開(kāi)發(fā)能力的語(yǔ)言中實(shí)現(xiàn)。Python就是一個(gè)很好的備選項(xiàng),但是那時(shí)候并沒(méi)有這類(lèi)數(shù)據(jù)結(jié)構(gòu)的整合集,也沒(méi)有能提供相關(guān)功能的工具。結(jié)果就是pandas最初被開(kāi)發(fā)出來(lái)用于解決金融和商業(yè)分析問(wèn)題,pandas尤其擅長(zhǎng)深度時(shí)間序列和處理商業(yè)進(jìn)程中產(chǎn)生的時(shí)間索引數(shù)據(jù)。

使用R語(yǔ)言進(jìn)行統(tǒng)計(jì)計(jì)算的用戶(hù)對(duì)DataFrame的名稱(chēng)會(huì)非常熟悉,因?yàn)檫@個(gè)對(duì)象是根據(jù)相似的R data.frame對(duì)象進(jìn)行命名的。與Python不同的是,數(shù)據(jù)框在R語(yǔ)言中是標(biāo)準(zhǔn)庫(kù)中的內(nèi)容。因此,pandas中的很多特征通常與R核心的實(shí)現(xiàn)或者R的附加庫(kù)提供的功能一致。

pandas的名字的來(lái)源是panel data,這是計(jì)量經(jīng)濟(jì)學(xué)中針對(duì)多維結(jié)構(gòu)化數(shù)據(jù)集的術(shù)語(yǔ)。pandas也是Python data analysis(Python數(shù)據(jù)分析)自身的簡(jiǎn)寫(xiě)短語(yǔ)。

03 matplotlib

http://matplotlib.org

matplotlib是最流行的用于制圖及其他二維數(shù)據(jù)可視化的Python庫(kù)。它由John D. Hunter創(chuàng)建,目前由一個(gè)大型開(kāi)發(fā)者團(tuán)隊(duì)維護(hù)。matplotlib被設(shè)計(jì)為適合出版的制圖工具。

對(duì)于Python編程者來(lái)說(shuō)也有其他可視化庫(kù),但matplotlib依然使用最為廣泛,并且與生態(tài)系統(tǒng)的其他庫(kù)良好整合。我認(rèn)為將它作為默認(rèn)可視化工具是一個(gè)安全的選擇。

關(guān)于matplotlib更詳細(xì)講解,請(qǐng)戳:純干貨:手把手教你用Python做數(shù)據(jù)可視化(附代碼)

04 IPython與Jupyter

http://ipython.org

http://jupyter.org

IPython項(xiàng)目開(kāi)始于2001年,由Fernando Pérez發(fā)起,旨在開(kāi)發(fā)一個(gè)更具交互性的Python解釋器。在過(guò)去的16年中,它成為Python數(shù)據(jù)技術(shù)棧中最重要的工具之一。

盡管它本身并不提供任何計(jì)算或數(shù)據(jù)分析工具,它的設(shè)計(jì)側(cè)重于在交互計(jì)算和軟件開(kāi)發(fā)兩方面將生產(chǎn)力最大化。它使用了一種執(zhí)行-探索工作流來(lái)替代其他語(yǔ)言中典型的編輯-編譯-運(yùn)行工作流。它還提供針對(duì)操作系統(tǒng)命令行和文件系統(tǒng)的易用接口。由于數(shù)據(jù)分析編碼工作包含大量的探索、試驗(yàn)、試錯(cuò)和遍歷,IPython可以使你更快速地完成工作。

2014年,F(xiàn)ernando和IPython團(tuán)隊(duì)發(fā)布了Jupyter項(xiàng)目。Jupyter項(xiàng)目旨在設(shè)計(jì)一個(gè)適用于更多語(yǔ)言的交互式計(jì)算工具。IPython web notebook 則成為Jupyter notebook,可以支持超過(guò)40種編程語(yǔ)言。IPython系統(tǒng)目前可以作為一個(gè)內(nèi)核(一種編程語(yǔ)言模式)用于在 Jupyter 中使用Python。

IPython自身已成為 Jupyter開(kāi)源項(xiàng)目中的一個(gè)組件,后者提供交互性、探索性的高效環(huán)境。IPtyhon最古老、最簡(jiǎn)單的“模式”就是一個(gè)加強(qiáng)版的Python命令行,用于提高編寫(xiě)、測(cè)試、調(diào)試Python代碼的速度。

你也可以通過(guò)基于Web、支持多語(yǔ)言的代碼“筆記本”——Jupyter Notebook來(lái)使用IPython系統(tǒng)。IPython命令行和 Jupyter notebook對(duì)于數(shù)據(jù)探索和可視化非常有用。

Jupyter notebook系統(tǒng)允許你使用Markdown和HTML創(chuàng)建包含代碼和文本的富文檔。其他編程語(yǔ)言也針對(duì)Jupyter實(shí)現(xiàn)了內(nèi)核,允許你在Jupyter中使用多種語(yǔ)言而不僅僅是Python。

對(duì)我個(gè)人來(lái)說(shuō),IPython涉及我工作的大部分內(nèi)容,包括運(yùn)行、調(diào)試、測(cè)試代碼。

05 SciPy

http://scipy.org

SciPy是科學(xué)計(jì)算領(lǐng)域針對(duì)不同標(biāo)準(zhǔn)問(wèn)題域的包集合。以下是SciPy中包含的一些包:

  •  scipy.integrate

           數(shù)值積分例程和微分方程求解器

  •  scipy.linalg

          線(xiàn)性代數(shù)例程和基于numpy.linalg的矩陣分解

  •  scipy.optimize

          函數(shù)優(yōu)化器(最小化器)和求根算法

  •  scipy.signal

          信號(hào)處理工具

  •  scipy.sparse

           稀疏矩陣與稀疏線(xiàn)性系統(tǒng)求解器

  •  scipy.special

           SPECFUN的包裝器。SPECFUN是Fortran語(yǔ)言下實(shí)現(xiàn)通用數(shù)據(jù)函數(shù)的包,例如gamma函數(shù)。

  •  scipy.stats

          標(biāo)準(zhǔn)的連續(xù)和離散概率分布(密度函數(shù)、采樣器、連續(xù)分布函數(shù))、各類(lèi)統(tǒng)計(jì)測(cè)試、各類(lèi)描述性統(tǒng)計(jì)。

SciPy與NumPy一起為很多傳統(tǒng)科學(xué)計(jì)算應(yīng)用提供了一個(gè)合理、完整、成熟的計(jì)算基礎(chǔ)。

06 scikit-learn

http://scikit-learn.org

scikit-learn項(xiàng)目誕生于2010年,目前已成為Python編程者首選的機(jī)器學(xué)習(xí)工具包。僅僅七年,scikit-learn就擁有了全世界1 500位代碼貢獻(xiàn)者。其中包含以下子模塊。

  •  分類(lèi):SVM、最近鄰、隨機(jī)森林、邏輯回歸等
  •  回歸:Lasso、嶺回歸等
  •  聚類(lèi):k-means、譜聚類(lèi)等
  •  降維:PCA、特征選擇、矩陣分解等
  •  模型選擇:網(wǎng)格搜索、交叉驗(yàn)證、指標(biāo)矩陣
  •  預(yù)處理:特征提取、正態(tài)化

scikit-learn與pandas、statsmodels、IPython一起使Python成了高效的數(shù)據(jù)科學(xué)編程語(yǔ)言。

07 statsmodels

http://statsmodels.org

statsmodels是一個(gè)統(tǒng)計(jì)分析包。它源自斯坦福大學(xué)統(tǒng)計(jì)學(xué)教授Jonathan Taylor 利用R語(yǔ)言實(shí)現(xiàn)的各類(lèi)分析模型。Skipper Seabold 和 Josef Perktold早在2010年便創(chuàng)建了新的statsmodels項(xiàng)目。自那之后該項(xiàng)目迅速成長(zhǎng),擁有大量活躍用戶(hù)和貢獻(xiàn)者者。

Nathaniel Smith 開(kāi)發(fā)了Patsy項(xiàng)目,為R語(yǔ)言公式系統(tǒng)所驅(qū)動(dòng)的statsmodels包提供公式、模型規(guī)范框架。

與scikit-learn相比,statsmodels包含經(jīng)典的(高頻詞匯)統(tǒng)計(jì)學(xué)、經(jīng)濟(jì)學(xué)算法。它所包含的模型如下。

  •  回歸模型:線(xiàn)性回歸、通用線(xiàn)性模型、魯棒線(xiàn)性模型、線(xiàn)性混合效應(yīng)模型等
  •  方差分析(ANOVA )
  •  時(shí)間序列分析:AR、ARMA、ARIMA、VAR等模型
  •  非參數(shù)方法:核密度估計(jì)、核回歸
  •  統(tǒng)計(jì)模型結(jié)果可視化

statsmodels更專(zhuān)注于統(tǒng)計(jì)推理,提供不確定性評(píng)價(jià)和p值參數(shù)。相反,scikit-learn更專(zhuān)注于預(yù)測(cè)。

關(guān)于作者:韋斯·麥金尼(Wes McKinney)是流行的Python開(kāi)源數(shù)據(jù)分析庫(kù)pandas的創(chuàng)始人。他是一名活躍的演講者,也是Python數(shù)據(jù)社區(qū)和Apache軟件基金會(huì)的Python/C++開(kāi)源開(kāi)發(fā)者。目前他在紐約從事軟件架構(gòu)師工作。

本文摘編自《利用Python進(jìn)行數(shù)據(jù)分析》(原書(shū)第2版),經(jīng)出版方授權(quán)發(fā)布。 

 

責(zé)任編輯:龐桂玉 來(lái)源: 大數(shù)據(jù)DT
相關(guān)推薦

2023-11-06 18:06:00

Docker容器

2021-01-28 23:35:37

Python開(kāi)發(fā)數(shù)據(jù)

2014-03-18 16:12:00

代碼整潔編寫(xiě)代碼

2021-11-22 14:53:03

IT管理IT指標(biāo)IT領(lǐng)導(dǎo)者

2022-05-19 15:51:35

開(kāi)源筆記

2023-10-08 09:52:55

2023-06-04 17:13:26

.NET開(kāi)發(fā)應(yīng)用程序

2015-12-08 10:49:59

2022-10-08 23:46:47

JavaScript對(duì)象開(kāi)發(fā)

2022-12-27 15:09:30

2023-11-27 16:51:28

PythonPython庫(kù)

2011-06-06 13:24:33

復(fù)印機(jī)技巧

2010-06-17 14:14:21

2024-08-30 14:29:03

2024-11-06 16:45:39

Python游戲開(kāi)發(fā)代碼

2017-11-17 05:49:48

工業(yè)物聯(lián)網(wǎng)測(cè)試平臺(tái)

2021-04-27 22:32:18

Python

2017-04-13 10:58:32

Python開(kāi)發(fā)者

2015-06-11 13:34:54

編程編程階段

2021-11-17 15:28:06

LinuxLinux命令
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

主站蜘蛛池模板: 网站国产| 久久蜜桃av一区二区天堂 | 欧美一级在线免费 | 中文日韩字幕 | 奇米视频777 | 理论片午午伦夜理片影院 | 久久国产精品久久国产精品 | 超碰成人免费 | 91精品一区 | 日韩精品免费一区二区在线观看 | 请别相信他免费喜剧电影在线观看 | 91精品国产91久久久久久不卞 | 欧美乱做爰xxxⅹ久久久 | 亚洲国产aⅴ精品 | 久久精品中文 | 综合色婷婷 | www.嫩草| 国产第1页 | 久久久久久国产精品三区 | 午夜小视频在线播放 | 九九综合| 狠狠爱视频 | 一级毛片免费完整视频 | 欧美一区二区三区久久精品视 | 99免费在线视频 | 国色天香综合网 | 国产综合精品一区二区三区 | 日韩中文字幕在线观看 | 国产无套一区二区三区久久 | www.久久精品视频 | 久久精品国产99国产 | 欧美一区二区三区久久精品 | 一级欧美一级日韩片 | www.蜜桃av.com| 欧洲高清转码区一二区 | 国产成人精品免高潮在线观看 | 亚洲不卡 | 欧美成视频 | 99久久精品国产毛片 | 天天干天天操天天射 | 天堂在线www|