溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

數(shù)據(jù)科學(xué)領(lǐng)域常用的Python包有哪些

發(fā)布時間:2021-11-22 16:49:41 來源:億速云 閱讀:234 作者:iii 欄目:編程語言

這篇文章主要介紹“數(shù)據(jù)科學(xué)領(lǐng)域常用的Python包有哪些”,在日常操作中,相信很多人在數(shù)據(jù)科學(xué)領(lǐng)域常用的Python包有哪些問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”數(shù)據(jù)科學(xué)領(lǐng)域常用的Python包有哪些”的疑惑有所幫助!接下來,請跟著小編一起來學(xué)習(xí)吧!

核心庫 
1、Numpy

Numpy(stands for Numerical Python)當開始嘗試用Python解決科學(xué)任務(wù)時,numpy是基石,它能操作數(shù)組和矩陣提供了豐富的特性。該庫提供了NumPy數(shù)組類型的數(shù)學(xué)運算向量化,可以改善性能,從而加快執(zhí)行速度。

2.SciPy

SciPy是一個工程和科學(xué)軟件庫。SciPy包含線性代數(shù),優(yōu)化,集成和統(tǒng)計的模塊。 SciPy庫的主要功能是建立在NumPy的基礎(chǔ)之上,因此它的數(shù)組大量使用了NumPy。

3.Pandas

Pandas是一個可以方便處理表數(shù)據(jù)(經(jīng)常接觸,易于理解的excell表)。數(shù)據(jù)清洗的完美工具,被設(shè)計用來快速簡單的數(shù)據(jù)操作,聚合和可視化。 在這個庫中主要由兩種數(shù)據(jù)結(jié)構(gòu):

pandas.Series - 1維

pandas.DataFrames - 2維

如下只是我們基于Pandas能做的事情的小清單:

在DataFrame中輕易地刪除或者添加列 
把數(shù)據(jù)結(jié)構(gòu)轉(zhuǎn)換為DataFrame對象 
處理缺失數(shù)據(jù),用NaNs代表 
GroupBy方法 
可視化 
Google Trends history

GitHub pull requests history

4.Matplotlib

MatPlotlib是python可視化庫,它讓Python正成為像MatLab或者Mathematica這樣的科學(xué)工具的有力競爭者。然而,這個庫相當?shù)讓樱馕吨阈枰帉懜嗟拇a才能達到高級的可視化效果,通常會比使用更多的高級工具付出更多的努力,但總體來說努力是值得的。

只需要一點功夫,你就能做出下面任何的可視化方法:

線圖 
散點圖 
條形圖和直方圖 
餅狀圖 
莖圖 
等高線圖 
矢量場圖 
頻譜圖 
還有使用Matplotlib創(chuàng)建標簽,圖例和許多其他格式化實體的功能。 基本上,一切都是可定制的。

該庫由不同的平臺支持,并使用不同的GUI套件來描述所得到的可視化。 不同的IDE(如IPython)支持Matplotlib的功能。

還有一些其他的庫可以使可視化變得更加容易。

5.Seaborn

Seaborn主要聚焦于統(tǒng)計模型的可視化;這些可視化包括總結(jié)數(shù)據(jù)但仍描繪整體分布的熱圖。Seaborn是基于Matplotlib建立的,并高度依賴于那個包。

6.Bokeh

Boken是另一個強大的可視化庫,目標是建立交互可視化的圖標。與之前的庫相比,這個庫獨立于Matplotlib。 正如我們已經(jīng)提到的那樣,Bokeh的主要聚焦在交互性,它通過現(xiàn)代瀏覽器以數(shù)據(jù)驅(qū)動文檔(d3.js)的風(fēng)格呈現(xiàn)。

7.Plotly

簡單介紹一下Plotly。它是一個基于Web的工具箱,將API暴露給某些編程語言(其中包括Python)來構(gòu)建可視化。 在 http://plot.ly 網(wǎng)站上有一些強大的,開箱即用的圖形。為了使用Plotly,您將需要設(shè)置您的API密鑰。圖形將被處理在服務(wù)器端,并將在互聯(lián)網(wǎng)上發(fā)布。

Google Trends history

GitHub pull requests history

機器學(xué)習(xí) 
8.SciKit-Learn

Scikits專為特定功能(如圖像處理和機器學(xué)習(xí)輔助)而設(shè)計。 在這些領(lǐng)域,其中最突出的一個是scikit-learn。該軟件包建立在SciPy的上層,并大量使用其數(shù)學(xué)操作。

scikit-learn公開了一個簡潔和一致的界面,結(jié)合常見的機器學(xué)習(xí)算法,使得把機器學(xué)習(xí)帶入生產(chǎn)系統(tǒng)變得簡單。 此庫有著高質(zhì)量的代碼和良好的文檔,并使用簡單性能優(yōu)越,事實上是使用Python進行機器學(xué)習(xí)的行業(yè)標準。

深度學(xué)習(xí) - Keras/TensorFlow/Theano 
在深度學(xué)習(xí)方面,Python中最突出和最方便的庫之一是Keras,它可以在TensorFlow或者Theano之上運行。讓我們來看一下他們的一些細節(jié)。

9.Theano

首先,讓我們談?wù)凾heano。

Theano是一個Python包,它定義了與NumPy類似的多維數(shù)組,以及數(shù)學(xué)運算和表達式。 這個庫是自編譯的,使其能夠在所有架構(gòu)上高效運行。 最初由蒙特利爾大學(xué)機器學(xué)習(xí)組開發(fā),主要用于機器學(xué)習(xí)的需求。

重要的是要注意的是,Theano與NumPy在低層次的操作上緊密集成。 該庫還優(yōu)化了GPU和CPU的使用,使數(shù)據(jù)密集型計算的性能更快。

效率和穩(wěn)定性調(diào)整允許更精確的結(jié)果,甚至非常小的值,例如,log(1 + x)的計算將給出x的最小值的認知結(jié)果。TensorFlow

10TensorFlow

   TensorFlow是由Google的開發(fā)人員開發(fā),它是一個圖形化的數(shù)據(jù)流計算開源庫,專注于機器學(xué)習(xí)。 它旨在滿足Google環(huán)境對訓(xùn)練神經(jīng)網(wǎng)絡(luò)的高度要求,并且是基于神經(jīng)網(wǎng)絡(luò)的機器學(xué)習(xí)系統(tǒng)DistBelief的繼任者。然而,TensorFlow并不是嚴格用于谷歌范圍的科學(xué)用途 - 在一般的實際應(yīng)用中同樣有效。

TensorFlow的關(guān)鍵特征是其多層節(jié)點系統(tǒng),可以在大型數(shù)據(jù)集上快速訓(xùn)練人工神經(jīng)網(wǎng)絡(luò)。 這為Google的語音識別和圖像對象識別提供了支持。

11.Keras

最后,我們來看看Keras。它是一個用Python編寫的用于在高級界面構(gòu)建神經(jīng)網(wǎng)絡(luò)的開源庫。它簡單易懂又有著高度可擴展性。它使用Theano或TensorFlow作為后端,但Microsoft現(xiàn)在將CNTK(Microsoft的認知工具包)集成為新的后端。

設(shè)計中的極簡方法旨在通過建立極小集進行快速和簡單的實驗。

Keras 真的非常容易入門而且可以通過快速標準逐漸深入。它是用純Python編寫的,高度模塊化而又可擴展。盡管它的輕松,簡單和高度定向,Keras仍然對大型模型有著足夠深和有力的機器學(xué)習(xí)能力。

Keras的核心是基于層,其他一切都圍繞著它們構(gòu)建。數(shù)據(jù)預(yù)處理為張量tensor,第一層layer負責(zé)輸入張量,最后一層負責(zé)輸出,并建立模型。

Google Trends history

GitHub pull requests history

自然語言處理。 
12.NLTK

這套工具包的名稱代表自然語言工具包,顧名思義,它用于符號和統(tǒng)計自然語言處理的常見任務(wù)。 NLTK旨在促進NLP及相關(guān)領(lǐng)域(語言學(xué),認知科學(xué)人工智能等)的教學(xué)和研究,目前正在被重點關(guān)注。

NLTK的功能允許許多操作,例如文本標記,分類和標記,名稱實體標識,建立語言樹,顯示語言間和句子內(nèi)依賴性,詞根,語義推理。 所有的構(gòu)建塊都可以為不同的任務(wù)構(gòu)建復(fù)雜的研究系統(tǒng),例如情緒分析,自動總結(jié)。

13.Gensim

它是一個用于Python的開源庫,可以用來進行向量空間建模和主題建模的工具。 這個工具包不僅可以進行內(nèi)存處理,還設(shè)計來高效處理大型文本。效率通過使用NumPy數(shù)據(jù)結(jié)構(gòu)和SciPy操作來實現(xiàn)。既高效又易于使用。

Gensim旨在與原始和非結(jié)構(gòu)化數(shù)字文本一起使用。 Gensim實現(xiàn)了諸如分層Dirichlet進程(HDP),潛在語義分析(LSA)和潛在Dirichlet分配(LDA)之類的算法,以及tf-idf,隨機投影,word2vec和document2vec便于檢查文本中的重復(fù)模式的文本的一套文件(通常稱為語料庫)。 所有的算法是無監(jiān)督的 - 不需要任何參數(shù),唯一的輸入是語料庫。

Google Trends history

GitHub pull requests history

數(shù)據(jù)挖掘、統(tǒng)計 
14.Scrapy

Scrapy是用于從網(wǎng)絡(luò)檢索結(jié)構(gòu)化數(shù)據(jù)(如聯(lián)系人信息或URL)的爬行程序(也稱為蜘蛛機器人)的庫。

它是開源的,用Python編寫。 它的設(shè)計嚴格按照爬行的方式,正如它的名字,但是它已經(jīng)在完整的框架中發(fā)展,能夠從API采集數(shù)據(jù)并作為通用爬蟲。

該庫在界面設(shè)計中著名的“不要重復(fù)自己” - 它提示用戶編寫將要重復(fù)使用的通用代碼,從而構(gòu)建和縮放大型爬蟲。

Scrapy的架構(gòu)圍繞著Spider類構(gòu)建,包含了爬行器跟蹤的一系列指令。

15.Statsmodels

正如您可能從名稱中猜出的那樣,statsmodels是一個用于Python的庫,使用戶能夠通過使用各種統(tǒng)計模型估計方法進行數(shù)據(jù)挖掘并執(zhí)行統(tǒng)計斷言和分析。

許多有用的特征是描述性的,并通過使用線性回歸模型,廣義線性模型,離散選擇模型,魯棒線性模型,時間序列分析模型,各種估計量進行統(tǒng)計。

該庫還提供了可擴展的繪圖功能,專門為統(tǒng)計分析和在進行大數(shù)據(jù)統(tǒng)計時表現(xiàn)良好而設(shè)計。

到此,關(guān)于“數(shù)據(jù)科學(xué)領(lǐng)域常用的Python包有哪些”的學(xué)習(xí)就結(jié)束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學(xué)習(xí),快去試試吧!若想繼續(xù)學(xué)習(xí)更多相關(guān)知識,請繼續(xù)關(guān)注億速云網(wǎng)站,小編會繼續(xù)努力為大家?guī)砀鄬嵱玫奈恼拢?/p>

向AI問一下細節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI