怎樣用python數據建模?
先放結論:matlab對于數模比賽各種嘗試很方便。長遠考慮python用處大。核心功能兩者差不多,都是腳本語言,都有成熟的平臺和工具。
對于數學建模來講MATLAB用起來更容易,操作比較簡單,工具箱用起來比較"傻瓜"式,有些高級算法也可能可以在比賽中現學現用,比如遺傳算法工具箱,按要求在GUI界面填空就行。
Python是通用編程工具,應用面廣,數據處理方面的第三方的庫如numpy(矩陣基礎) scipy(矩陣運算) sklearn(人工智能算法) matplotlib(科學制圖)也很強大,學好它們對于數學建模足夠了。
關于數模編程能力成長曲線。兩個上手都不難,中期(大概就是進步到能拿國獎的水平那個階段)matlab數據操作和算法積累進步會更快那么一點點,到后期(編程實現不再是難點時)熟練了又會沒什么區別。
因為python的適用面廣,如果在技術層面有長遠打算,建議學Python。
從語言本身的發展看,MATLAB是mathwork公司自己開發維護的,提升已到瓶頸,未來用的人可能會越來越少;python是開源的,全世界一起開發維護,這幾年可以頒發個進步最快獎,未來可能更萬能,不會可能要再補課。
補充幾個MATLAB功能方便的點:
1.對圖的交互式編輯功能。畫出來的圖可以直接在圖編輯模式下手動調整大小,增加標注等等,即使不懂相應代碼也能處理。缺點:不是用代碼畫出來的東西,一旦數據要調整重新畫很麻煩,畫多個相似樣式的圖也不容易。這會讓人養成不好的習慣。
2.方便的幫助功能。哪個函數不會用,選上直接F1就可以幫助查詢用法。幫助系統也全面且人性化,只要英語過關非常好用,現用現查。
3.直接在變量區定義和修改變量。又是一個免去代碼的操作。Python的兩個平臺——pycharm學生版或者Spyder也有相同功能。但是不建議用,也是不好的習慣。
4.文件數據自動導入功能。這個可以多摸索一下,工具挺強大的。尤其數學建模比賽時很省事。
5.選中變量畫圖。在沒想好以畫哪種形式的圖時可以隨便試試,挺方便的。