前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >我的5年Python7年R,述说她们的差异在哪里?

我的5年Python7年R,述说她们的差异在哪里?

作者头像
1480
发布2019-07-22 16:30:08
4860
发布2019-07-22 16:30:08
举报

前言

首次接触R语言是在2012年读研的时候,有一门课程是统计分析与R语言,清晰地记得期末考试时,由于把答案给同学抄,最终落了个重考的后果(重考92分)。那个时候真的非常喜欢R语言,因为这种面向对象的语言很简单、很灵活,而且功能也非常强大(如果你接触过SAS,也许也会有这样的感想)。

对于Python的接触相对晚了两年,2014年走上实习岗位时,主管让我研究推荐系统方面的实操,当时看的第一本相关书籍就是中国科学院博士项亮的《推荐系统实践》一书,而书内涉及的代码就是Python。为了工作,为了让推荐系统可以落地,便开始了Python的学习和研究,一晃5年过去了。

自己也曾写过两者在编程和功能上的差异,但都只是基于具体应用上的对比,并没有在全局的角度对比两者的异同,例如这些文章:

从零开始学Python【6】--pandas(数据框部分01)

从零开始学Python【7】--pandas(数据框部分02)

从零开始学Python【8】--pandas(数据框部分03)

从零开始学Python【9】--pandas(数据框部分04)

从零开始学Python【22】--线性回归诊断(第一部分)

从零开始学Python【23】--线性回归诊断(第二部分)

从零开始学Python【25】--岭回归及LASSO回归(实战部分)

正好就在前两天有网友在公众号留言,希望我分享一篇文章,来描述R语言和Python的差异。那么今天就跟各位网友聊一聊这个话题。

编程体验

哇,两门语言真的太赞了,几乎可以解决数据分析或挖掘过程中的所有问题(例如数据搜集、清洗、整合、探索、可视化、建模、评估、展现等)。她们之所以功能,是因为前辈们已经打造了很多成熟的第三方包,对于工具的使用者,大多数情况下只需调包跑数据即可。截止到本文的编写,R语言官网公布14,553个包,PyPI官网公布188,135个项目(即模块)

两门语言的编程语法也是比较相似的,区别在于R语言更有数学味道,都是函数思维;而Python更有编程的味道,除了有函数、还有“方法”、“类”的巧妙使用。所以初学Python的朋友(非计算机专业)不太容易接受Python的编程思维,而更喜欢拥抱R语言。但当你发现Python的语法特点和技巧后,也许会更爱Python(至少我是这样的)。

功能对比

正如前文所说,R语言和Python几乎可以做数据分析和挖掘中的所有任务,都可以找到对应的第三方包。这里将通过汇总的方式,做一个有关R语言和Python的功能对比,帮助读者有的放矢地学习和掌握各种的第三方包,以及在不同的应用场景下,选择对应的第三方包实现内容的落地。

企业更倾向的她

打开招聘网站,搜索数据分析或挖掘的关键词,会出来很多的岗位,再仔细查看岗位的任职要求,你会发现基本上都需要应聘者掌握1~2门编程语言。如:

所以,不管是R语言还是Python,都非常受企业的欢迎。如果非要从其中抉择出一个更有优势的工具,我会选择Python。因为Python与其他大数据技术融合的更完美,更和谐,这也是为什么近几年Python特别火爆的原因吧。

各自的成长

最后看一看R语言和Python在近几年的成长趋势,也许从中你会有自己的判断和结论。首先对比2019年7月份的TIOBE指数(该指数是编程语言的排名榜):

从排名结果上来看,Python稳居第3,比2018年同期上位一格;但是R语言就没有那么幸运,目前排第20,同比掉了6格。

再来对比R语言和Python的热度指数曲线,如下图所示:

在2014年之前,R语言的热度相对比较平稳,但总体呈上涨趋势;而Python大起大落,成长过程并没有顺风顺水。2014年之后,R语言有了快速的发展,上升幅度非常大,直到2018年遇到了挫折,气势一路下降;Python相对进入平稳期,稳步上升,直到2018年后,出现了突飞猛进的态势。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2019-07-18,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 数据分析1480 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档