內容來自轉載整理 1.NumPy數值計算 NumPy是使用Python進行科學計算的基礎包,Numpy可以提供數組支持以及相應的高效處理函數,是Python數據分析的基礎,也是SciPy、Pandas等數據處理和科學計算庫最基本的函數功能庫,且其數據類型對Python數據分析十分有用。它包含: 一個 ...
內容來自轉載整理
1.NumPy數值計算
NumPy是使用Python進行科學計算的基礎包,Numpy可以提供數組支持以及相應的高效處理函數,是Python數據分析的基礎,也是SciPy、Pandas等數據處理和科學計算庫最基本的函數功能庫,且其數據類型對Python數據分析十分有用。它包含:
一個強大的N維數組對象
複雜的(廣播)功能
用於集成C / C ++和Fortran代碼的工具
有用的線性代數,傅里葉變換和隨機數功能
作用:這種工具可用來存儲和處理大型矩陣,比Python自身的嵌套列表結構要高效的多。
numpy和稀疏矩陣運算包scipy配合使用更加方便。
2.pandas數據處理
pandas 是python的一個數據分析包,是基於NumPy 的一種工具,該工具是為瞭解決數據分析任務而創建的。pandas提供了大量能使我們快速便捷地處理數據的函數和方法。數據結構如下:
Series:一維數組,與Numpy中的一維array類似。二者與Python基本的數據結構List也很相近。Series如今能保存不同種數據類型,字元串、boolean值、數字等都能保存在Series中。
Time- Series:以時間為索引的Series。
DataFrame:二維的表格型數據結構。很多功能與R中的data.frame類似。可以將DataFrame理解為Series的容器。
Panel :三維的數組,可以理解為DataFrame的容器。
作用:該工具是為瞭解決數據分析任務而創建的。pandas提供了大量能使我們快速便捷地處理數據的函數和方法。Pandas是Python的一個數據分析包,Pandas最初被用作金融數據分析工具而開發出來,因此Pandas為時間序列分析提供了很好的支持。Pandas是進行數據清晰/整理的最好工具。
3.matplotlib數據可視化
Matplotlib是強大的數據可視化工具和作圖庫,是主要用於繪製數據圖表的Python庫,提供了繪製各類可視化圖形的命令字型檔、簡單的介面,可以方便用戶輕鬆掌握圖形的格式,繪製各類可視化圖形。使用Matplotlib,可以定製所做圖表的任一方面。他支持所有操作系統下不同的GUI後端,並且可以將圖形輸出為常見的矢量圖和圖形測試,如PDF SVG JPG PNG BMP GIF.通過數據繪圖,我們可以將枯燥的數字轉化成人們容易接收的圖表。 Matplotlib有一套允許定製各種屬性的預設設置,可以控制Matplotlib中的每一個預設屬性:圖像大小、每英寸點數、線寬、色彩和樣式、子圖、坐標軸、網個屬性、文字和文字屬性。
作用:是基於Numpy的一套Python包,這個包提供了吩咐的數據繪圖工具,主要用於繪製一些統計圖形。Matplotlib是Python的一個可視化模塊,他能方便的只做線條圖、餅圖、柱狀圖以及其他專業圖形。
4.sciPy科學計算
SciPy是一款方便、易於使用、專為科學和工程設計的Python工具包.它包括統計,優化,整合,線性代數模塊,傅里葉變換,信號和圖像處理,常微分方程求解器等等.
SciPy是一組專門解決科學計算中各種標準問題域的包的集合,包含的功能有最優化、線性代數、積分、插值、擬合、特殊函數、快速傅里葉變換、信號處理和圖像處理、常微分方程求解和其他科學與工程中常用的計算等,這些對數據分析和挖掘十分有用。
Scipy是一款方便、易於使用、專門為科學和工程設計的Python包,它包括統計、優化、整合、線性代數模塊、傅里葉變換、信號和圖像處理、常微分方程求解器等。Scipy依賴於Numpy,並提供許多對用戶友好的和有效的數值常式,如數值積分和優化。
5.Scrapy爬蟲
Scrapy是專門為爬蟲而生的工具,具有URL讀取、HTML解析、存儲數據等功能,可以使用Twisted非同步網路庫來處理網路通訊,架構清晰,且包含了各種中間件介面,可以靈活的完成各種需求。
6.scikit-learn機器學習
Scikit-Learn是Python常用的機器學習工具包,提供了完善的機器學習工具箱,支持數據預處理、分類、回歸、聚類、預測和模型分析等強大機器學習庫,其依賴於Numpy、Scipy和Matplotlib等。
Scikit-Learn是基於Python機器學習的模塊,基於BSD開源許可證。
Scikit-Learn的安裝需要Numpy Scopy Matplotlib等模塊,Scikit-Learn的主要功能分為六個部分,分類、回歸、聚類、數據降維、模型選擇、數據預處理。
Scikit-Learn自帶一些經典的數據集,比如用於分類的iris和digits數據集,還有用於回歸分析的boston house prices數據集。該數據集是一種字典結構,數據存儲在.data成員中,輸出標簽存儲在.target成員中。Scikit-Learn建立在Scipy之上,提供了一套常用的機器學習演算法,通過一個統一的介面來使用,Scikit-Learn有助於在數據集上實現流行的演算法。
Scikit-Learn還有一些庫,比如:用於自然語言處理的Nltk、用於網站數據抓取的Scrappy、用於網路挖掘的Pattern、用於深度學習的Theano等。
7.Keras深度學習
Keras是深度學習庫,人工神經網路和深度學習模型,基於Theano之上,依賴於Numpy和Scipy,利用它可以搭建普通的神經網路和各種深度學習模型,如語言處理、圖像識別、自編碼器、迴圈神經網路、遞歸審計網路、捲積神經網路等。
8.statsmodels統計建模計量經濟
Statsmodels是Python的統計建模和計量經濟學工具包,包括一些描述統計、統計模型估計和推斷。
總之,
Python有著像Matlab一樣強大的數值計算工具包Numpy;
Python能直接處理數據,而Pandas幾乎可以像SQL那樣對數據進行控制;
有著繪圖工具包Matplotlib,Matplotlib能夠對數據和記過進行可視化,快速理解數據;
有著科學計算工具包Scipy;
Scikit-Learn提供了機器學習演算法的支持,Theano提供了升讀學習框架(還可以使用CPU加速)。