Python與R、Matlab的對比

做爲一枚程序員,想要研究Python編程語言與數學學習(教學)的結合,就不能不瞭解以及比對一下其餘數學學習與應用的解決方案,好比R語言、Matlab等數學軟件。通過普遍的搜索瞭解了一下國外的反饋與趨勢以後,最終的結論就是 Python確實是將來

Python與R語言的對比

Python與R語言在數據分析領域的對比,DataCamp上有一篇引用率很是高的文章,數據分析選擇R仍是Python,不過這篇文章是2015年寫的,咱們先大體總結一下文章內容:html

  • R主要用於學術與研究,也開始迅速進入企業市場,越是接近統計學、研究、數據科學,你就會越偏心R,而Python主要用於程序員想進入數據分析領域、掌握統計技能,以及其餘開發人員進入數據科學領域。若是你的工做越接近工程環境,你會越偏心Python。
  • R的社區生態主要是研究員,數據科學家、統計學家和量化研究員,而Python主要是程序員和開發者。
  • R學習門檻比較高,可是當你掌握了基礎以後就學起來比較容易,R對程序員來講不難;Python可讀性強,入門很是容易,被公認爲很是不錯的入門編程語言。
  • 在2015年前的Tiobe編程語言的排名上Python排名在第4或第5,R排在第17到13。而據2015數據分析領域,用R的研究員佔58%,Python佔42%,二者都用的佔23.45%;
  • 在2013年,R轉Python的有26%,Python轉R的有18%,而新進入數據分析領域的有44%的人選擇R,23%的人選擇Python.

從2015年以前的狀況看來,正如做者所說,R和Python在數據分析領域確實勢均力敵,難分伯仲,從數據中咱們能夠看出,雖然Python相比R更流行,在編程方面更有優點,可是在數據科學領域,選擇使用R的人更多。python

可是翻到2018年的文章裏看到201六、2017年的數據,狀況下發生了逆轉。在數據科學領域,2016年有34%的人選擇Python,42%的人選擇R,而到了2017年41%的人選擇Python,36%的人選擇R。在2017年的調查統計裏數據科學家和工程師最流行的編程語言分別是JavaScript(58.7%,使人驚訝啊,可能與數據可視化有關?)、SQL(58%)、Python(45%),而R(11.2%),Python在商業領域領域比較火,而R在學術和研究領域比較多,因此不那麼流行吧。而在最近的Tiobe的排行榜上,與數據科學相關的編程語言Python、R、SQL、Matlab等漲幅都比較大,Python在整個編程語言的流行度也由2014年的2%猛增到2019年8.26%,躍居第3,成爲2018年年度語言。程序員

Python、R、Scala在數據科學領域的流行包
Python、R、Scala在數據科學領域的流行包編程

Python與Matlab的對比

雖然不是學數學的,可是Matlab的大名但是如雷貫耳,與數學相關專業、相關行業的學生、工程師們基本必定會使用到它。MathWorks公司跟設計公司Adobe、三維軟件公司Autodesk同樣都是極其硬核的存在,旗下的產品不只是學習必備,並且是工程(比工做聽起來霸氣)必備。我我的對Matlab的瞭解極其有限,Python與Matlab的對比我也只能像一個產品經理去普遍查閱專業意見來權衡利弊。我所得出的結論也只是基於掌握了Python的前提,斷不敢用偏頗的立場去褻瀆神器。
咱們來看一下美國相關專業人員對二者的對比,只是粗略而不精準的翻譯一下。編程語言

我是一名工程師,以前長期使用Matlab來處理複雜的數學運算都沒有遇到什麼大的問題,就在幾個月前由於崗位須要學習了Python以後,我才意識到Matlab相比Python是多麼的糟糕。以前須要我用Matlab花一成天處理的問題用Python只需數小時,Python的表現、流暢度讓我驚訝。並且使用Python我能夠作以前用Matlab作的任何事情,並且更優秀。所以我很是建議Matlab使用者轉向Python。Python編程語言比Matlab更強大,可以聯合很是多的外部工具模塊,只需一個文件就能夠調用很是多的庫、函數、類,語法也更加簡單,面向對象開發也更加方便,還能很是方便地調用C、C++、Fortran。Python是免費的,並且能夠運行在更多平臺上面。 ---Stackoverflow某工程師

通過調查Matlab與Python的宿命之爭在2011年就開始了,並且網上Matlab與Python的對比文章、評論很是之多。Matlab官方在2013年就開始拿Matlab和Python進行對比官方對比最是致命:MATLAB OR Python中文,年代越近,由Matlab全面轉向Python的建議就越多,更多人直言Python是將來的編程語言,在Python與Matlab的選擇之上,看了很是多的建議,已成一邊倒的趨勢。
有人列出了Python相對於Matlab的8大優點,我只粗略翻譯一下這8大優點,詳情你們能夠去查看原文:函數

  • Python的代碼相比於Matlab更簡潔,可讀性更強;
  • 和其餘編程同樣,Python都是從0開始計數,而Matlab不是;
  • Python能夠更好的支持哈希字典;
  • 面向對象開發讓Python更簡單、更優雅;
  • Python免費且開源;
  • Python一個文件、模塊裏能夠包含很是多的函數;
  • Python支持import聲明;
  • Python支持更多圖像處理的包和工具集

在PyCon 2017年的大會上,多位大佬提出科學家應該全面擁抱Python,在2015年開始Python在NASA的地位就開始遙遙領先IDL、Matlab和Fortran。因爲這裏咱們只討論Python和Matlab在數學上的對比,至於科學家轉型Python的優點的細節,你們能夠看DataCamp的雄文工具

小結

其實在寫這篇文章以前,我就問過一下包括清華在內的學校以及一些數學專業的學生,Matlab和R仍是佔主流,可是通過一番調查發如今美國Python在數據科學、數學等方面好像漸成壓倒性的優點。這也激勵我要把用Python學數學的專欄給寫下去。學習

相關文章
相關標籤/搜索