0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

數(shù)據(jù)分析中最常用、最好用的20個(gè)Python庫(kù)分享

電子設(shè)計(jì) ? 來源:Yingying,李大囧 ? 作者:ActiveWizards ? 2021-01-03 09:28 ? 次閱讀

【導(dǎo)讀】Python在解決數(shù)據(jù)科學(xué)任務(wù)和挑戰(zhàn)方面處于領(lǐng)先地位。而一些方便易用的庫(kù)則幫助了開發(fā)人員高效開發(fā)。在這里我們整理了20個(gè)在深度學(xué)習(xí)、數(shù)據(jù)分析中最常用、最好用的Python庫(kù),供大家一起學(xué)習(xí)。

作者| ActiveWizards

編譯|專知

整理|Yingying,李大囧

核心庫(kù)與統(tǒng)計(jì)

NumPy

我們從科學(xué)應(yīng)用程序庫(kù)開始說起,NumPy是該領(lǐng)域的主要軟件包之一。 它旨在處理大型多維數(shù)組和矩陣,并且廣泛的高級(jí)數(shù)學(xué)函數(shù)和實(shí)現(xiàn)的方法集合,使得可以使用這些對(duì)象執(zhí)行各種操作。

在這一年中,NumPy有很多更新。 除了錯(cuò)誤修復(fù)和兼容性問題之外,關(guān)鍵更新還包括NumPy對(duì)象的打印格式。此外,某些函數(shù)現(xiàn)在可以處理Python中可用的任何編碼的文件。

SciPy

另一個(gè)科學(xué)計(jì)算核心庫(kù)是SciPy。它基于NumPy,并擴(kuò)展了其功能。 SciPy主數(shù)據(jù)結(jié)構(gòu)又是一個(gè)多維數(shù)組,由Numpy實(shí)現(xiàn)。該軟件包包含有助于解決線性代數(shù),概率論,積分計(jì)算和更多任務(wù)的工具。

SciPy可以適配不同的操作系統(tǒng)。這一年,Scipy帶來了許多函數(shù)的更新,尤其是優(yōu)化器也更新了。此外,封裝了許多新的BLAS和LAPACK函數(shù)。

Pandas

Pandas提供了高級(jí)數(shù)據(jù)結(jié)構(gòu)和各種分析工具。該軟件包的一大特色是能夠?qū)⑾喈?dāng)復(fù)雜的數(shù)據(jù)操作轉(zhuǎn)換為一個(gè)或兩個(gè)命令。 Pandas包含許多用于分組,過濾和組合數(shù)據(jù)的內(nèi)置方法,以及時(shí)間序列功能。

Pandas在這一年的更新包括數(shù)百個(gè)新功能,bug修復(fù)和API的更改。

StatsModels

Statsmodels是一個(gè)統(tǒng)用于統(tǒng)計(jì)數(shù)據(jù)分析的方法,例如統(tǒng)計(jì)模型估計(jì),執(zhí)行統(tǒng)計(jì)測(cè)試等。在它的幫助下,您可以實(shí)現(xiàn)許多機(jī)器學(xué)習(xí)方法。

這個(gè)庫(kù)在不停的更新。今年帶來了時(shí)間序列改進(jìn)和新的計(jì)數(shù)模型,即GeneralizedPoisson,零膨脹模型和NegativeBinomialP,以及新的多變量方法 - 因子分析,MANOVA和ANOVA中的重復(fù)測(cè)量。

可視化

Matplotlib

Matplotlib是一個(gè)用于創(chuàng)建二維圖表和圖形的低級(jí)庫(kù)。 借助它的幫助,您可以構(gòu)建各種圖表,從直方圖和散點(diǎn)圖到非笛卡爾坐標(biāo)圖。 此外,許多流行的繪圖庫(kù)被設(shè)計(jì)為與matplotlib一起使用。

顏色,尺寸,字體,圖例的樣式等都有變化。比如軸圖例的自動(dòng)對(duì)齊,和更友好的配色。

pIYBAF9uKKOAZAQaAAEltPVFels346.png

Seaborn

Seaborn本質(zhì)上是基于matplotlib庫(kù)的更高級(jí)別的API。 它包含有豐富的可視化圖庫(kù),包括時(shí)間序列,聯(lián)合圖和小提琴圖(展示數(shù)據(jù)密度分布)等復(fù)雜類型。

seaborn更新主要包括bug修復(fù)。 此外,F(xiàn)acetGrid或PairGrid與增強(qiáng)的交互式matplotlib后端之間的兼容性有所改進(jìn),為可視化添加了參數(shù)和選項(xiàng)。

o4YBAF9uKKWAJTbuAAFnnWiR5ak704.png

Plotly

Plotly是一個(gè)流行的庫(kù),可以讓您輕松地構(gòu)建復(fù)雜的圖形。 該軟件包適用于交互式Web應(yīng)用程序。 其可視化效果包括輪廓圖形,三元圖和3D圖表。

今年該庫(kù)的更新包括對(duì)“多鏈接視圖”以及動(dòng)畫和串?dāng)_集成的支持。

Bokeh

Bokeh庫(kù)使用JavaScript小部件在瀏覽器中創(chuàng)建交互式和可伸縮的可視化。 該庫(kù)提供了多種圖形,樣式及鏈接圖形式的交互能力,定義回調(diào)以及更多有用的功能。

Bokeh可以提供改進(jìn)的交互式功能,例如分類刻度標(biāo)簽的旋轉(zhuǎn),以及小縮放工具和自定義工具提示字段增強(qiáng)功能。

pIYBAF9uKKiADl8nAAJgUugR2a8987.png

Pydot

Pydot是Graphviz的一個(gè)接口,用純Python編寫。 在它的幫助下,可以顯示圖形的結(jié)構(gòu),這在構(gòu)建神經(jīng)網(wǎng)絡(luò)和基于決策樹的算法時(shí)會(huì)經(jīng)常用到。

pIYBAF9uKKuASmz2AAGODhkEbXg177.png

機(jī)器學(xué)習(xí)

Scikit-learn

這個(gè)基于NumPy和SciPy的Python模塊是處理數(shù)據(jù)的最佳庫(kù)之一。它為許多標(biāo)準(zhǔn)機(jī)器學(xué)習(xí)和數(shù)據(jù)挖掘任務(wù)提供算法,例如聚類,回歸,分類,降維和模型選擇。

今年這個(gè)庫(kù)的更新包括:修改交叉驗(yàn)證,提供了使用多個(gè)指標(biāo)的功能;最近鄰和邏輯回歸等幾種訓(xùn)練方法有一些小的改進(jìn)。

XGBoost / LightGBM / CatBoost

Boosting是最流行的機(jī)器學(xué)習(xí)算法之一,其在于構(gòu)建基本模型的集合,即決策樹。因此,有專門的庫(kù)設(shè)計(jì)用于快速方便地實(shí)現(xiàn)該方法。XGBoost,LightGBM和CatBoost值得特別關(guān)注。這些庫(kù)提供高度優(yōu)化,可擴(kuò)展和快速的梯度增強(qiáng)實(shí)現(xiàn),這使得它們?cè)跀?shù)據(jù)科學(xué)家和Kaggle競(jìng)賽中非常受歡迎。

Eli5

通常,機(jī)器學(xué)習(xí)模型預(yù)測(cè)的結(jié)果并不完全清楚,而eli5庫(kù)有助與解決問題。它是一個(gè)可視化調(diào)試機(jī)器學(xué)習(xí)模型的包,并逐步跟蹤算法的工作過程。它可與scikit-learn,XGBoost,LightGBM,lightning和sklearn-crfsuite庫(kù)兼容。

深度學(xué)習(xí)

TensorFlow

TensorFlow是一個(gè)流行的深度和機(jī)器學(xué)習(xí)框架,由Google Brain開發(fā)。它提供了使用具有多個(gè)數(shù)據(jù)集的人工神經(jīng)網(wǎng)絡(luò)的能力。最受歡迎的TensorFlow應(yīng)用包括對(duì)象識(shí)別,語(yǔ)音識(shí)別等。

這個(gè)庫(kù)在新版本中很快,引入了新功能和新功能。最新的修復(fù)包括潛在的安全漏洞和改進(jìn)的TensorFlow和GPU集成,例如您可以在一臺(tái)計(jì)算機(jī)上的多個(gè)GPU上運(yùn)行Estimator模型。

PyTorch

PyTorch是一個(gè)大型框架,允許使用GPU加速執(zhí)行張量計(jì)算,創(chuàng)建動(dòng)態(tài)計(jì)算圖并自動(dòng)計(jì)算梯度。在此之上,PyTorch提供了豐富的API,用于解決與神經(jīng)網(wǎng)絡(luò)相關(guān)的應(yīng)用。

該庫(kù)基于Torch,這是一個(gè)用C語(yǔ)言實(shí)現(xiàn)的開源深度學(xué)習(xí)庫(kù),在Lua中有一個(gè)包裝器。 Python API于2017年推出,從那時(shí)起,該框架越來越受歡迎并吸引了越來越多的數(shù)據(jù)科學(xué)家。

Keras

Keras是一個(gè)用于處理神經(jīng)網(wǎng)絡(luò)的高級(jí)庫(kù),運(yùn)行在TensorFlow,Theano之上?,F(xiàn)在它也可以使用CNTK和MxNet作為后端。它簡(jiǎn)化了許多特定任務(wù),并大大減少了單調(diào)代碼的數(shù)量。但是,它可能不適合某些復(fù)雜的事情。

該庫(kù)在性能,可用性,文檔和API都有一定改進(jìn)。一些新功能是Conv3DTranspose層,新的MobileNet應(yīng)用程序和自我規(guī)范化網(wǎng)絡(luò)。

分布式深度學(xué)習(xí)

Dist-keras / elephas / spark-deep-learning

使用像Apache Spark這樣的分布式計(jì)算系統(tǒng)可以更輕松地處理如此大量的數(shù)據(jù),這再次擴(kuò)展了深度學(xué)習(xí)的可能性。因此,dist-keras,elephas和spark-deep-learning正在迅速發(fā)展。這些軟件包可以在Apache Spark的幫助下直接基于Keras庫(kù)訓(xùn)練神經(jīng)網(wǎng)絡(luò)。 Spark-deep-learning還提供了使用Python神經(jīng)網(wǎng)絡(luò)創(chuàng)建管道的工具。

自然語(yǔ)言處理

NLTK

NLTK是一組庫(kù),是自然語(yǔ)言處理的完整平臺(tái)。 在NLTK的幫助下,您可以通過各種方式處理和分析文本,標(biāo)記文本,提取信息等。NLTK還用于原型設(shè)計(jì)和構(gòu)建研究系統(tǒng)。

這個(gè)庫(kù)的附魔包括API和兼容性的微小變化以及CoreNLP的新界面。

SpaCy

SpaCy是一個(gè)自然語(yǔ)言處理庫(kù),包含優(yōu)秀的demo,API文檔和演示應(yīng)用程序。該庫(kù)是用Cython語(yǔ)言編寫的,它是Python的C擴(kuò)展。它支持近30種語(yǔ)言,提供簡(jiǎn)單的深度學(xué)習(xí)集成,并保證了穩(wěn)健性和高準(zhǔn)確性。 SpaCy的另一個(gè)重要特性它是為整個(gè)文檔處理而設(shè)計(jì)的,而不會(huì)將文檔分成短語(yǔ)。

Gensim

Gensim是一個(gè)用于強(qiáng)大語(yǔ)義分析,主題建模和向量空間建模的Python庫(kù),基于Numpy和Scipy構(gòu)建。它提供了流行的NLP算法的實(shí)現(xiàn),例如word2vec。

數(shù)據(jù)抓取

Scrapy

Scrapy是一個(gè)用于創(chuàng)建掃描網(wǎng)站頁(yè)面和收集結(jié)構(gòu)化數(shù)據(jù)的爬蟲庫(kù)。此外,Scrapy可以從API中提取數(shù)據(jù)。由于其可擴(kuò)展性和可移植性,該庫(kù)恰好非常方便。

結(jié)論
與去年相比,一些新的庫(kù)越來越受歡迎,而那些已成為數(shù)據(jù)科學(xué)任務(wù)經(jīng)典庫(kù)正在不斷改進(jìn)。

表格中列出了這些庫(kù)的github活動(dòng)的詳細(xì)統(tǒng)計(jì)信息。

o4YBAF9uKK-AYCGJAAOx6nNMTIY255.png

編輯:hfy


聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • python
    +關(guān)注

    關(guān)注

    56

    文章

    4797

    瀏覽量

    84688
  • 深度學(xué)習(xí)
    +關(guān)注

    關(guān)注

    73

    文章

    5503

    瀏覽量

    121162
  • 自然語(yǔ)言處理
    +關(guān)注

    關(guān)注

    1

    文章

    618

    瀏覽量

    13561
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    Mathematica 在數(shù)據(jù)分析中的應(yīng)用

    數(shù)據(jù)分析是現(xiàn)代科學(xué)研究和商業(yè)決策中不可或缺的一部分。隨著數(shù)據(jù)量的爆炸性增長(zhǎng),對(duì)數(shù)據(jù)分析工具的需求也在不斷增加。Mathematica,作為一種強(qiáng)大的計(jì)算軟件,以其獨(dú)特的符號(hào)計(jì)算能力和廣泛的內(nèi)置函數(shù)
    的頭像 發(fā)表于 12-26 15:41 ?61次閱讀

    數(shù)據(jù)可視化與數(shù)據(jù)分析的關(guān)系

    在當(dāng)今這個(gè)信息爆炸的時(shí)代,數(shù)據(jù)無處不在。無論是企業(yè)運(yùn)營(yíng)、科學(xué)研究還是個(gè)人決策,我們都需要從海量的數(shù)據(jù)中提取有價(jià)值的信息。數(shù)據(jù)分析數(shù)據(jù)可視化作為兩個(gè)
    的頭像 發(fā)表于 12-06 17:09 ?341次閱讀

    如何使用SQL進(jìn)行數(shù)據(jù)分析

    使用SQL進(jìn)行數(shù)據(jù)分析是一個(gè)強(qiáng)大且靈活的過程,它涉及從數(shù)據(jù)庫(kù)中提取、清洗、轉(zhuǎn)換和聚合數(shù)據(jù),以便進(jìn)行進(jìn)一步的分析和洞察。 1.
    的頭像 發(fā)表于 11-19 10:26 ?285次閱讀

    eda與傳統(tǒng)數(shù)據(jù)分析的區(qū)別

    EDA(Exploratory Data Analysis,探索性數(shù)據(jù)分析)與傳統(tǒng)數(shù)據(jù)分析之間存在顯著的差異。以下是兩者的主要區(qū)別: 一、分析目的和方法論 EDA 目的 :EDA的主要目的是對(duì)
    的頭像 發(fā)表于 11-13 10:52 ?328次閱讀

    raid 在大數(shù)據(jù)分析中的應(yīng)用

    RAID(Redundant Array of Independent Disks,獨(dú)立磁盤冗余陣列)在大數(shù)據(jù)分析中的應(yīng)用主要體現(xiàn)在提高存儲(chǔ)系統(tǒng)的性能、可靠性和容量上。以下是RAID在大數(shù)據(jù)分析
    的頭像 發(fā)表于 11-12 09:44 ?251次閱讀

    SUMIF函數(shù)在數(shù)據(jù)分析中的應(yīng)用

    在商業(yè)和科學(xué)研究中,數(shù)據(jù)分析是一項(xiàng)基本且關(guān)鍵的技能。Excel作為最常用數(shù)據(jù)分析工具之一,提供了多種函數(shù)來幫助用戶處理和分析數(shù)據(jù)。SUMI
    的頭像 發(fā)表于 11-11 09:14 ?320次閱讀

    Python建模算法與應(yīng)用

    Python作為一種功能強(qiáng)大、免費(fèi)、開源且面向?qū)ο蟮木幊陶Z(yǔ)言,在科學(xué)計(jì)算、數(shù)學(xué)建模、數(shù)據(jù)分析等領(lǐng)域展現(xiàn)出了卓越的性能。其簡(jiǎn)潔的語(yǔ)法、對(duì)動(dòng)態(tài)輸入的支持以及解釋性語(yǔ)言的本質(zhì),使得Python在多個(gè)平臺(tái)
    的頭像 發(fā)表于 07-24 10:41 ?553次閱讀

    網(wǎng)絡(luò)爬蟲,Python數(shù)據(jù)分析

    電子發(fā)燒友網(wǎng)站提供《網(wǎng)絡(luò)爬蟲,Python數(shù)據(jù)分析.pdf》資料免費(fèi)下載
    發(fā)表于 07-13 09:27 ?1次下載

    數(shù)據(jù)分析除了spss還有什么

    數(shù)據(jù)分析是當(dāng)今世界中一個(gè)非常重要的領(lǐng)域,它涉及到從大量數(shù)據(jù)中提取有用信息、發(fā)現(xiàn)模式和趨勢(shì),并為決策提供支持。SPSS(Statistical Package for the Social
    的頭像 發(fā)表于 07-05 15:01 ?623次閱讀

    數(shù)據(jù)分析的工具有哪些

    數(shù)據(jù)分析是一個(gè)涉及收集、處理、分析和解釋數(shù)據(jù)以得出有意義見解的過程。在這個(gè)過程中,使用正確的工具至關(guān)重要。以下是一些主要的數(shù)據(jù)分析工具,以及
    的頭像 發(fā)表于 07-05 14:54 ?858次閱讀

    數(shù)據(jù)分析有哪些分析方法

    數(shù)據(jù)分析是一種重要的技能,它可以幫助我們從大量的數(shù)據(jù)中提取有價(jià)值的信息,從而做出更明智的決策。在這篇文章中,我們將介紹數(shù)據(jù)分析的各種方法,包括描述性分析、診斷性
    的頭像 發(fā)表于 07-05 14:51 ?584次閱讀

    深度學(xué)習(xí)常用Python庫(kù)

    深度學(xué)習(xí)常用Python庫(kù),包括核心庫(kù)、可視化工具、深度學(xué)習(xí)框架、自然語(yǔ)言處理庫(kù)以及數(shù)據(jù)抓取
    的頭像 發(fā)表于 07-03 16:04 ?650次閱讀

    機(jī)器學(xué)習(xí)在數(shù)據(jù)分析中的應(yīng)用

    隨著大數(shù)據(jù)時(shí)代的到來,數(shù)據(jù)量的爆炸性增長(zhǎng)對(duì)數(shù)據(jù)分析提出了更高的要求。機(jī)器學(xué)習(xí)作為一種強(qiáng)大的工具,通過訓(xùn)練模型從數(shù)據(jù)中學(xué)習(xí)規(guī)律,為企業(yè)和組織提供了更高效、更準(zhǔn)確的
    的頭像 發(fā)表于 07-02 11:22 ?631次閱讀

    數(shù)據(jù)分析平臺(tái)網(wǎng)站

    數(shù)據(jù)分析平臺(tái)是一種用于處理和分析大規(guī)模數(shù)據(jù)集的系統(tǒng),旨在從海量數(shù)據(jù)中提取有價(jià)值的信息和洞察。以下是大數(shù)據(jù)分析平臺(tái)的主要功能和應(yīng)用場(chǎng)景: 主
    的頭像 發(fā)表于 06-28 15:46 ?668次閱讀

    求助,關(guān)于AD采集到的數(shù)據(jù)分析問題

    問題描述:使用AD采集一個(gè)10Hz到2MHz的脈沖,脈沖底部可能大于零,由采集到的數(shù)據(jù)分析出該脈沖的上升時(shí)間,幅值和占空比。 備注:在分析的時(shí)候已經(jīng)知道脈沖的頻率,精度為2X10^-5. 在
    發(fā)表于 05-09 07:40