盤點數(shù)據(jù)科學最流行的29個Python庫

導讀:我們都著眼于如何使用現(xiàn)有的庫來避免重復工作,從而使程序開發(fā)工作事半功倍。通常,開發(fā)大量原始代碼是一個費時費力的工作,為了避免這種情況,我們會盡可能多地使用庫中已有的類來創(chuàng)建對象,通常僅需要一行代碼。因此,庫能夠幫助我們使用適量的代碼執(zhí)行重要的任務。

-
16 / 29
-
collections:建立在列表、元組、字典和集合基礎上的加強版數(shù)據(jù)結構。 -
csv:處理用逗號分隔值的文件。 -
datetime, time:日期和時間操作。 -
decimal:定點或浮點運算,包括貨幣計算。 -
doctest:通過驗證測試或嵌入在docstring中的預期結果進行簡單的單元測試。 -
json:處理用于Web服務和NoSQL文檔數(shù)據(jù)庫的JSON(JavaScript Object Notation)數(shù)據(jù)。 -
math:常見的數(shù)學常量和運算。 -
os:與操作系統(tǒng)進行交互。 -
queue:一種先進先出的數(shù)據(jù)結構。 -
random:偽隨機數(shù)操作。 -
re:用于模式匹配的正則表達式。 -
sqlite3:SQLite關系數(shù)據(jù)庫訪問。
-
statistics:數(shù)理統(tǒng)計函數(shù),如均值、中值、眾數(shù)和方差等。 -
string:字符串操作。 -
sys:—命令行參數(shù)處理,如標準輸入流、輸出流和錯誤流。 -
timeit:性能分析。

-
3 / 29
-
NumPy(Numerical Python):Python沒有內置的數(shù)組數(shù)據(jù)結構。它提供的列表類型雖然使用起來更方便,但是處理速度較慢。NumPy提供了高性能的ndarray數(shù)據(jù)結構來表示列表和矩陣,同時還提供了處理這些數(shù)據(jù)結構的操作。詳細教程請戳??高能!8段代碼演示Numpy數(shù)據(jù)運算的神操作 -
SciPy(Scientific Python):SciPy基于NumPy開發(fā),增加了用于科學處理的程序,例如積分、微分方程、額外的矩陣處理等。scipy.org負責管理SciPy和NumPy。詳細教程請戳??3段極簡代碼帶你入門Python科學計算庫SciPy -
StatsModels:為統(tǒng)計模型評估、統(tǒng)計測試和統(tǒng)計數(shù)據(jù)研究提供支持。
-
1 / 29
-
pandas:一個非常流行的數(shù)據(jù)處理庫。pandas充分利用了NumPy的ndarray類型,它的兩個關鍵數(shù)據(jù)結構是Series(一維)和DataFrame(二維)。詳細教程請戳??Pandas最詳細教程來了!

-
2 / 29
-
Matplotlib:可高度定制的可視化和繪圖庫。Matplotlib可以繪制正規(guī)圖、散點圖、柱狀圖、等高線圖、餅圖、矢量場圖、網格圖、極坐標圖、3D圖以及添加文字說明等。詳細教程請戳??Python實操:手把手教你用Matplotlib把數(shù)據(jù)畫出來 -
Seaborn:基于Matplotlib構建的更高級別的可視化庫。與Matplotlib相比,Seaborn改進了外觀,增加了可視化的方法,并且可以使用更少的代碼創(chuàng)建可視化。詳細教程請戳??數(shù)據(jù)可視化干貨:使用pandas和seaborn制作炫酷圖表(附代碼)
-
4 / 29
-
scikit-learn:一個頂級的機器學習庫。機器學習是AI的一個子集,深度學習則是機器學習的一個子集,專注于神經網絡。 -
Keras:最易于使用的深度學習庫之一。Keras運行在TensorFlow(谷歌)、CNTK(微軟的深度學習認知工具包)或Theano(蒙特利爾大學)之上。 -
TensorFlow:由谷歌開發(fā),是使用最廣泛的深度學習庫。TensorFlow與GPU(圖形處理單元)或谷歌的定制TPU(Tensor處理單元)配合使用可以獲得最佳的性能。TensorFlow在人工智能和大數(shù)據(jù)分析中有非常重要的地位,因為人工智能和大數(shù)據(jù)對數(shù)據(jù)處理的需求非常巨大。本書使用TensorFlow內置的Keras版本。詳細教程請戳??TensorFlow是什么?怎么用?終于有人講明白了 -
OpenAI Gym:用于開發(fā)、測試和比較強化學習算法的庫和開發(fā)環(huán)境。

-
3 / 29
-
NLTK(Natural Language Toolkit):用于完成自然語言處理(NLP)任務。 -
TextBlob:一個面向對象的NLP文本處理庫,基于NLTK和模式NLP庫構建,簡化了許多NLP任務。 -
Gensim:功能與NLTK類似。通常用于為文檔合集構建索引,然后確定另一個文檔與索引中每個文檔的相似程度。

評論
圖片
表情
