processing和matlab哪个好
第一次看到有这样比较的
通常大家会为 Matlab \ Mathmatica \ Maple 这三个巨头哪个更强大争论。
在有就是有人想比较 Scilab \ Matlab \ freemat 的差距。
Processing是一种具有革命前瞻性的新兴计算机语言,它的概念是在电子艺术的环境下介绍程序语言,并将电子艺术的概念介绍给程序设计师。
照这个说法,Processing很不错。
在机器学习科学计算领域,有哪些工具能让python和matlab一样好用?
Pycharm相比Spyder的优点是:
1 调试更方便,Spyder在其他文件里面设置断点,竟然无法停下来,必须得在主程序里面设置一个断点,然后“Step into”,如果嵌套比较深的话,这种方法特别麻烦。 Pycharm就没有这个问题。
2 Pycharm的“Reformat code”功能我特别喜欢,可以自动将你的代码排版规范,比如=两边各空一格,函数结尾空两行等等,不止能作用于一个文件,而且能一次性作用于整个项目!
Pycharm的缺点:
1 最新版本虽然支持了ipython,但功能体验比较差,1,反应比较慢 2 tab键经常不能弹出对象的属性与方法。
2 没有workspace。
所以,我的建议是结合使用这两个工具,基本上能达到MATLAB的使用体验。
2016年3月14日的补充
经过一段时间使用,也发现了Anaconda的缺点。特别是spyder。
1 在workspace里,对数据量偏大一点的变量进行查看,容易卡死,而MATLAB不会。
2 再workspace里,浮点数只显示小数点后三位,我经常要手工修改为显示为小数点后6位,不知道怎么修改默认设置。
3 断点调试明显没有MATLAB方便。
4 没有MATLAB那样方便的Profiler,用于发现代码运算瓶颈,而Spyder没有。
还有其他的,就不一一列举了,总之,在IDE上,Spyder相比MATLAB差远了,但我用Python,仍然会用Spyder,因为目前没有更好的替代品。
原答案:
千言万语汇成一句话: 安装Anaconda!
Anaconda非常适合做研究.Pycharm适合做开发,而不是研究.
为什么说Anaconda好呢?
1 自带了很多适合搞科学研究的库,比如numpy, scipy, pandas, matplotlib, sympy, sklearn等.
2 里面的spyder的界面非常像matlab的界面, 还支持单步调试.编辑器像matlab那样,可以创建cell(使用#%%,与matlab类似),方便查看与调试。
3 里面的ipython notebook, 非常适合交互和展示成果.