Python对比Matlab,有什么决定性的优势

2024-05-08 18:53

1. Python对比Matlab,有什么决定性的优势

Python的优势:
Python相对于Matlab最大的优势:免费。但既然你已经能用上Matlab,想必不在乎这个了。
Python次大的优势:开源。你可以大量更改科学计算的算法细节。
可移植性,Matlab必然不如Python。但你主要做Research,这方面需求应当不高。
第三方生态,Matlab不如Python。比如3D的绘图工具包,比如GUI,比如更方便的并行,使用GPU,Functional等等。长期来看,Python的科学计算生态会比Matlab好。
语言更加优美。另外如果有一定的OOP需求,构建较大一点的科学计算系统,直接用Python比用Matlab混合的方案肯定要简洁不少。
毕竟是通用的编程语言,做做Web,搞个爬虫,编个脚本,写个小工具啥的用处广。要说非得用Matlab干么也成,只是……
Matlab的优势:
Community. 既然你们实验室用Matlab,说明搞你们这个领域的大部分学者可能都用Matlab。交流起来必然更加方便。
Simulink, 只能说这是个良心作品,不过题主好像用不着……
Matlab本来号称更快,但实际上由于Python越来越完善的生态,这个优势已经逐渐丧失了。这里有一个迭代有限差分法计算2D拉普拉斯方程的对比(500x500的grid,100次迭代),可以参考一下。
Type of solution :                     Time taken (sec)
Python (estimate) : 1500.0
Python + Psyco (estimate) : 1138.0
Python + NumPy Expression : 29.3
Blitz : 9.5
Inline : 4.3
Fast Inline : 2.3
Python/Fortran : 2.9
Pyrex : 2.5
Matlab (estimate) : 29.0
Octave (estimate) : 60.0
Pure C++ : 2.16
数据来自PerformancePython -
Legacy优势。你以前的代码都是Matlab写的,自己Matlab用的也熟,换成新的话,总得看一堆书吧,总得出一堆bug吧,总得踩一堆坑吧。这段时间也是Matlab的优势。或许本来这段时间可以再出一些活呢。毕竟目的是Research,这些工具都是帮忙验证idea的罢了。

Python对比Matlab,有什么决定性的优势

2. Python对比Matlab,有什么决定性的优势

Python的优势:Python相对于Matlab最大的优势:免费。但既然你已经能用上Matlab,想必不在乎这个了。
Python次大的优势:开源。你可以大量更改科学计算的算法细节。
可移植性,Matlab必然不如Python。但你主要做Research,这方面需求应当不高。
第三方生态,Matlab不如Python。比如3D的绘图工具包,比如GUI,比如更方便的并行,使用GPU,Functional等等。长期来看,Python的科学计算生态会比Matlab好。
语言更加优美。另外如果有一定的OOP需求,构建较大一点的科学计算系统,直接用Python比用Matlab混合的方案肯定要简洁不少。
毕竟是通用的编程语言,做做Web,搞个爬虫,编个脚本,写个小工具啥的用处广。要说非得用Matlab干么也成,只是……
Matlab的优势:Community. 既然你们实验室用Matlab,说明搞你们这个领域的大部分学者可能都用Matlab。交流起来必然更加方便。
Simulink, 只能说这是个良心作品,不过题主好像用不着……
Matlab本来号称更快,但实际上由于Python越来越完善的生态,这个优势已经逐渐丧失了。这里有一个迭代有限差分法计算2D拉普拉斯方程的对比(500x500的grid,100次迭代),可以参考一下。
Type of solution :                     Time taken (sec)
Python (estimate) : 1500.0
Python + Psyco (estimate) : 1138.0
Python + NumPy Expression : 29.3
Blitz : 9.5
Inline : 4.3
Fast Inline : 2.3
Python/Fortran : 2.9
Pyrex : 2.5
Matlab (estimate) : 29.0
Octave (estimate) : 60.0
Pure C++ : 2.16

3. Python对比Matlab,有什么决定性的优势

python和matlab的共同点都是各种库十分丰富。
python是给懒人用的。
matlab是给数学好的人用的。。。
比起python,matlab的大小简直不能忍。
python是免费的,我用上了Windows正版,Adobe Flash和DW的正版,但是仍然买不起matlab的正版。
matlab是专门给科学计算设计的。python不是。
python可以调用matlab库。当然matlab也能调用python库。
python容易学。
matlab在大学里你不得不学。
python的闭包有着奇怪的性质,这使得你把lisp语言翻译成python的时候经常遇到bug,而且基本上都是因为闭包而起。
当你把lisp语言翻译成matlab时,bug会比较少,但是你完全不知道它们是怎么出现的,而且很难解决。
matlab的代码可以在果壳发出来,并且复制它仍能运行。
python的代码可以在果壳发出来,如果你不用for,if等需要缩进的结构块,那它们也能运行。
上面那条好像吐槽过了。。。嗯。。没关系,因为很重要所以要吐槽两遍。。

Python对比Matlab,有什么决定性的优势

4. matlab做量化投资分析,怎么学

MATLAB是数学建模常用的软件,先学习数学建模,用于数学研究。
除此之外,还要学习编程,课程是C语言。
量化投资任重道远,慢慢来加油!
最新文章
热门文章
推荐阅读