简述Python的Numpy,SciPy和Pandas,Matplotlib的区别
Numpy: 基礎的數學計算模塊,以矩陣為主,純數學。
SciPy: 基于Numpy,提供方法(函數庫)直接計算結果,封裝了一些高階抽象和物理模型。比方說做個傅立葉變換,這是純數學的,用Numpy;做個濾波器,這屬于信號處理模型了,在Scipy里找。
Pandas: 提供了一套名為DataFrame的數據結構,適合統計分析中的表結構,在上層做數據分析,
更簡潔的說:
NumPy:N維數組容器
SciPy:科學計算函數庫
Pandas:表格容器
非數學研究,建議直接入手pandas,包含基礎的Numpy方法
Numpy:
來存儲和處理大型矩陣,比Python自身的嵌套列表(nested list structure)結構要高效的多,本身是由C語言開發。這個是很基礎的擴展,其余的擴展都是以此為基礎。數據結構為ndarray,一般有三種方式來創建。
Pandas:
基于NumPy 的一種工具,該工具是為了解決數據分析任務而創建的。Pandas 納入了大量庫和一些標準的數據模型,提供了高效地操作大型數據集所需的工具。最具有統計意味的工具包,某些方面優于R軟件。數據結構有一維的Series,二維的DataFrame(類似于Excel或者SQL中的表,如果深入學習,會發現Pandas和SQL相似的地方很多,例如merge函數),三維的Panel(Pan(el) + da(ta) + s,知道名字的由來了吧)。
學習Pandas你要掌握的是:
1.匯總和計算描述統計,處理缺失數據 ,層次化索引
2.清理、轉換、合并、重塑、GroupBy技術
3.日期和時間數據類型及工具(日期處理方便地飛起)
Matplotlib:
Python中最著名的繪圖系統,很多其他的繪圖例如seaborn(針對pandas繪圖而來)也是由其封裝而成。
繪制的圖形可以大致按照ggplot的顏色顯示,但是還是感覺很雞肋。但是matplotlib的復雜給其帶來了很強的定制性。其具有面向對象的方式及Pyplot的經典高層封裝。
需要掌握的是:
1.散點圖,折線圖,條形圖,直方圖,餅狀圖,箱形圖的繪制。
2.繪圖的三大系統:pyplot,pylab(不推薦),面向對象
3.坐標軸的調整,添加文字注釋,區域填充,及特殊圖形patches的使用
4.金融的同學注意的是:可以直接調用Yahoo財經數據繪圖
Scipy:
方便、易于使用、專為科學和工程設計的Python工具包.它包括統計,優化,整合,線性代數模塊,傅里葉變換,信號和圖像處理,常微分方程求解器等等。基本可以代替Matlab,但是使用的話和數據處理的關系不大,數學系,或者工程系相對用的多一些。
近期發現有個statsmodel可以補充scipy.stats,時間序列支持完美
鏈接:https://www.jianshu.com/p/32cb09d84487
總結
以上是生活随笔為你收集整理的简述Python的Numpy,SciPy和Pandas,Matplotlib的区别的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 计算机视觉——百度百科
- 下一篇: Python 学习 —— Numpy 、