更新時(shí)間:2022-07-11 來源:黑馬程序員 瀏覽量:
Python本身的數(shù)據(jù)分析功能并不強(qiáng),需要安裝一些第三方的擴(kuò)展庫來增強(qiáng)它的能力。在Python培訓(xùn)課程用到的庫包括NumPy、Pandas、Matplotlib、Seaborm、NLTK等,接下來將針對(duì)相關(guān)庫做一個(gè)簡單的介紹。
NumPy是Python開源的數(shù)值計(jì)算擴(kuò)展工具,它提供了Python對(duì)多維數(shù)組的支持,能夠支持高級(jí)的維度數(shù)組與矩陣運(yùn)算。此外,針對(duì)數(shù)組運(yùn)算也提供了大量的數(shù)學(xué)函數(shù)庫。NumPy是大部分Python科學(xué)計(jì)算的基礎(chǔ),它具有以下功能:
(1)快速高效的多維數(shù)據(jù)對(duì)象ndarray。
(2)高性能科學(xué)計(jì)算和數(shù)據(jù)分析的基礎(chǔ)包。
(3)多維數(shù)組(矩陣)具有矢量運(yùn)算能力,快速且節(jié)省空間。
(4)矩陣運(yùn)算。無需循環(huán)即可完成類似Matlab中的矢量運(yùn)算。
(5)線性代數(shù)、隨機(jī)數(shù)生成以及傅里葉變換功能。
Pandas是一個(gè)基于NumPy的數(shù)據(jù)分析包,它是為了解決數(shù)據(jù)分析任務(wù)而創(chuàng)建的。Pandas中納入了大量庫和標(biāo)準(zhǔn)的數(shù)據(jù)模型,提供了高效地操作大型數(shù)據(jù)集所需要的函數(shù)和方法,使用戶能快速便捷地處理數(shù)據(jù)。
Pandas作為強(qiáng)大而高效的數(shù)據(jù)分析環(huán)境中的重要因素之一,具有以下特點(diǎn):
(1)一個(gè)快速高效的DataFrame對(duì)象,具有默認(rèn)和自定義的索引。
(2)用于在數(shù)據(jù)結(jié)構(gòu)和不同文件格式中讀取和寫入數(shù)據(jù),比如文本文件、Exeel文件及SQLite數(shù)據(jù)庫。
(3)智能數(shù)據(jù)對(duì)齊和缺失數(shù)據(jù)的集成處理。
(4)基于標(biāo)簽切片和花式索引獲取數(shù)據(jù)集的子集。
(5)可以刪除或插入來自數(shù)據(jù)結(jié)構(gòu)的列。
(6)按數(shù)據(jù)分組進(jìn)行聚合和轉(zhuǎn)換。
(7)高性能的數(shù)據(jù)合并和連接。
(8)時(shí)間序列功能。
Matplotlib是一個(gè)用在Python中繪制數(shù)組的2D圖形庫,雖然它起源于模仿Matlab圖形命令,但它獨(dú)立于Matlab,可以通過Pythonic和面向?qū)ο蟮姆绞绞褂?,是Python中最出色的繪圖庫。
Matplotlib主要用純Python 語言進(jìn)行編寫,但它大量使用NumPy和其他擴(kuò)展代碼,即使對(duì)大型數(shù)組也能提供良好的性能。
Seabom是Python中基于Matplotlib的數(shù)據(jù)可視化工具,它提供了很多高層封裝的函數(shù),幫助數(shù)據(jù)分析人員快速繪制美觀的數(shù)據(jù)圖形,從而避免了許多額外的參數(shù)配置問題。注意:上面介紹的這些庫都已經(jīng)在安裝Anaconda時(shí)進(jìn)行了下載,后期可以直接使用import導(dǎo)入使用。
NLTK被稱為“使用Python進(jìn)行教學(xué)和計(jì)算語言學(xué)工作的絕佳工具”,以及“用自然語言進(jìn)行游戲的神奇圖書館”。
NLTK\2一個(gè)領(lǐng)先的平臺(tái),用于構(gòu)建使用人類語言數(shù)據(jù)的Python程序,它為超過50個(gè)語料庫和詞匯資源(如WordNet)提供了易于使用的接口,還提供了一套文本處理庫,用于分類、標(biāo)記化、詞干化、解析和語義推理、NLP庫的包裝器和一個(gè)活躍的討論論壇。
數(shù)據(jù)分析的流程是什么?如何做數(shù)據(jù)分析?
如何做數(shù)據(jù)分析?數(shù)據(jù)分析有什么作用?