Python与R、Matlab的对比

栏目: 编程工具 · 发布时间: 6年前

内容简介:作为一枚程序员,想要研究Python编程语言与数学学习(教学)的结合,就不能不了解以及比对一下其他数学学习与应用的解决方案,比如R语言、Matlab等数学软件。经过广泛的搜索了解了一下国外的反馈与趋势之后,最终的结论就是Python与R语言在数据分析领域的对比,DataCamp上有一篇引用率非常高的文章,从2015年之前的情况看来,正如作者所说,R和Python在数据分析领域确实平分秋色,难分伯仲,从数据中我们可以看出,虽然Python相比R更流行,在编程方面更有优势,但是在数据科学领域,选择使用R的人更多

作为一枚程序员,想要研究 Python 编程语言与数学学习(教学)的结合,就不能不了解以及比对一下其他数学学习与应用的解决方案,比如R语言、Matlab等数学软件。经过广泛的搜索了解了一下国外的反馈与趋势之后,最终的结论就是 Python确实是未来

Python与R语言的对比

Python与R语言在数据分析领域的对比,DataCamp上有一篇引用率非常高的文章, 数据分析选择R还是Python ,不过这篇文章是2015年写的,我们先大致总结一下文章内容:

  • 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的人更多。

但是翻到 2018年的文章 里看到2016、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、Matlab的对比

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学数学的专栏给写下去。


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Transcending CSS

Transcending CSS

Andy Clarke、Molly E. Holzschlag / New Riders / November 15, 2006 / $49.99

As the Web evolves to incorporate new standards and the latest browsers offer new possibilities for creative design, the art of creating Web sites is also changing. Few Web designers are experienced p......一起来看看 《Transcending CSS》 这本书的介绍吧!

随机密码生成器
随机密码生成器

多种字符组合密码

MD5 加密
MD5 加密

MD5 加密工具

html转js在线工具
html转js在线工具

html转js在线工具