只知道Pandas嗎?數(shù)據(jù)科學(xué)家不能錯過的24個Python庫(上)
前段時間,全世界范圍內(nèi)的Python谷歌搜索指數(shù)已經(jīng)超越了Java(Python王者到來?Python谷歌搜索指數(shù)已經(jīng)超越Java) 。說明Python越來越重要,同時,Python也是數(shù)據(jù)科學(xué)家必不可少的工具。最近,Analytics Vidhya總結(jié)了24個數(shù)據(jù)科學(xué)家不能錯過的24個Python庫,也是很不錯的一份list,我們一起來看看。也算是入門同學(xué)的一個學(xué)習(xí)和選擇的方向。
這24個庫包含在以下幾個領(lǐng)域中,本文主要介紹前4種:
- 用于數(shù)據(jù)收集的Python庫
- 用于數(shù)據(jù)清理和操作的Python庫
- 用于數(shù)據(jù)可視化的Python庫
- 用于建模的Python庫
數(shù)據(jù)收集的Python
您是否遇到過一種情況,即您沒有足夠的數(shù)據(jù)來解決您想要解決的問題? 這是數(shù)據(jù)科學(xué)中一個永恒的問題。 這就是為什么學(xué)習(xí)如何提取和收集數(shù)據(jù)對數(shù)據(jù)科學(xué)家來說是一項非常關(guān)鍵的技能。 它開辟了以前無法實現(xiàn)的途徑。
所以這里有三個有用的Python庫,用于提取和收集數(shù)據(jù)。
Beautiful Soup
Beautiful Soup是一個HTML和XML解析器,它為解析的頁面創(chuàng)建解析樹,用于從網(wǎng)頁中提取數(shù)據(jù)。 也就是主要為爬蟲爬到的網(wǎng)頁數(shù)據(jù)進(jìn)行數(shù)據(jù)抽取功能。
Scrapy

Scrapy是另一個用于Web抓取的超級有用的Python庫。 它是一個開源和協(xié)作框架,用于從網(wǎng)站中提取您需要的數(shù)據(jù)。 它使用起來快速而簡單。
Selenium

Selenium是一種用于自動化瀏覽器的流行工具。 它主要用于行業(yè)測試,但對于網(wǎng)絡(luò)抓取也非常方便。 實際上,Selenium在IT領(lǐng)域變得非常受歡迎。
數(shù)據(jù)清理和表示的Python庫
好吧 - 所以你已經(jīng)收集了你的數(shù)據(jù)并準(zhǔn)備好繼續(xù)挖掘。現(xiàn)在是時候清理我們可能面臨的任何混亂數(shù)據(jù)并學(xué)習(xí)如何操作它,以便我們的數(shù)據(jù)可以用于建模。
這里有四個Python庫可以幫助您實現(xiàn)這一目標(biāo)。 請記住,我們將處理現(xiàn)實世界中的結(jié)構(gòu)化(數(shù)字)和文本數(shù)據(jù)(非結(jié)構(gòu)化) - 這個庫列表涵蓋了所有這些。
Pandas

在數(shù)據(jù)處理和分析方面,沒有什么能比Pandas更勝一籌。 它是***的Python庫。 Pandas是用Python語言編寫的,特別適用于操作和分析任務(wù)。
該名稱來源于術(shù)語“面板數(shù)據(jù)”,這是一個數(shù)據(jù)集的計量經(jīng)濟學(xué)術(shù)語,包括對同一個體的多個時間段的觀察—— 維基百科
PyOD
在檢測異常值時苦苦掙扎? 你不是一個人。 這是有抱負(fù)(甚至已建立)數(shù)據(jù)科學(xué)家的常見問題。 你如何定義異常值?
別擔(dān)心,PyOD庫可以幫到您。
PyOD是一個全面且可擴展的Python工具包,用于檢測異常對象。 異常檢測是識別與大多數(shù)數(shù)據(jù)顯著不同的稀有項目或觀察值。
NumPy

像Pandas一樣,NumPy是另一個非常受歡迎的Python庫。 NumPy引入了支持大型多維數(shù)組和矩陣的函數(shù)。 它還引入了高級數(shù)學(xué)函數(shù)來處理這些數(shù)組和矩陣。
Spacy

到目前為止,我們已經(jīng)討論了如何清理和操作數(shù)值數(shù)據(jù)。 但是,如果你正在處理文本數(shù)據(jù)呢?
使用SpaCy。 它是一個超級有用且靈活的自然語言處理(NLP)庫和框架,用于清理文本文檔以進(jìn)行模型創(chuàng)建。 與用于類似任務(wù)的其他庫相比,SpaCy更快。
數(shù)據(jù)可視化的Python庫
下一個是什么? 當(dāng)然是數(shù)據(jù)可視化! 這是我們的假設(shè)被檢查的地方,隱藏的洞察力被挖掘出來并找到模式。
這里有三個用于數(shù)據(jù)可視化的很棒的Python庫。
Matplotlib

Matplotlib是Python中***的數(shù)據(jù)可視化庫。 它允許我們生成和構(gòu)建各種圖表。 它可以與Seaborn一起在視覺上探索數(shù)據(jù)(稍后會詳細(xì)介紹)。
Seaborn
Seaborn是另一個基于matplotlib的繪圖庫。 它是一個python庫,提供高級界面來繪制有吸引力的圖形。 matplotlib可以做什么,Seaborn只是以更具視覺吸引力的方式做到這一點。
Bokeh

Bokeh是一個交互式可視化庫,面向現(xiàn)代Web瀏覽器進(jìn)行演示。 它為大量數(shù)據(jù)集提供了多種圖形的優(yōu)雅構(gòu)造。
Bokeh可用于創(chuàng)建交互式圖表,儀表板和數(shù)據(jù)應(yīng)用程序。
建立數(shù)據(jù)挖掘模型的Python庫
我們已經(jīng)到達(dá)了本文最受期待的部分 - 構(gòu)建模型! 這就是我們大多數(shù)人首先進(jìn)入數(shù)據(jù)科學(xué)的原因,不是嗎?
讓我們通過這三個Python庫探索模型構(gòu)建。
Scikit-Learn

就像用于數(shù)據(jù)操作的Pandas和用于可視化的matplotlib一樣,scikit-learn是構(gòu)建模型的Python***。 沒有什么比得上它了。
事實上,scikit-learn建立在NumPy,SciPy和matplotlib之上。 它是開源的,每個人都可以訪問,并且可以在各種環(huán)境中重用。
TensorFlow

TensorFlow由Google開發(fā),是一個流行的深度學(xué)習(xí)庫,可幫助您構(gòu)建和訓(xùn)練不同的模型。 它是一個開源的端到端平臺。 TensorFlow提供簡單的模型構(gòu)建,強大的機器學(xué)習(xí)生成,以及強大的實驗工具和庫。
PyTorch

什么是PyTorch? 嗯,這是一個基于Python的科學(xué)計算包,可以用作:
- NumPy的替代品,可以使用GPU的強大功能
- 深度學(xué)習(xí)研究平臺,提供***的靈活性和速度