对于数学建模来讲MATLAB用起来更容易,操作比较简单,工具箱用起来比较”傻瓜”式,有些高级算法也可能可以在比赛中现学现用,比如遗传算法工具箱,按要求在GUI界面填空就行。
Python是通用编程工具,应用面广,数据处理方面的第三方的库如numpy(矩阵基础)scipy(矩阵运算)sklearn(人工智能算法)matplotlib(科学制图)也很强大,学好它们对于数学建模足够了。
关于数模编程能力成长曲线。两个上手都不难,中期(大概就是进步到能拿国奖的水平那个阶段)matlab数据操作和算法积累进步会更快那么一点点,到后期(编程实现不再是难点时)熟练了又会没什么区别。
因为python的适用面广,如果在技术层面有长远打算,建议学Python。
从语言本身的发展看,MATLAB是mathwork公司自己开发维护的,提升已到瓶颈,未来用的人可能会越来越少;python是开源的,全世界一起开发维护,这几年可以颁发个进步最快奖,未来可能更万能,不会可能要再补课。
补充几个MATLAB功能方便的点:
1.对图的交互式编辑功能。画出来的图可以直接在图编辑模式下手动调整大小,增加标注等等,即使不懂相应代码也能处理。缺点:不是用代码画出来的东西,一旦数据要调整重新画很麻烦,画多个相似样式的图也不容易。这会让人养成不好的习惯。
2.方便的帮助功能。哪个函数不会用,选上直接F1就可以帮助查询用法。帮助系统也全面且人性化,只要英语过关非常好用,现用现查。
3.直接在变量区定义和修改变量。又是一个免去代码的操作。Python的两个平台——pycharm学生版或者Spyder也有相同功能。但是不建议用,也是不好的习惯。
4.文件数据自动导入功能。这个可以多摸索一下,工具挺强大的。尤其数学建模比赛时很省事。
5.选中变量画图。在没想好以画哪种形式的图时可以随便试试,挺方便的。