目录

R与Python巅峰对决

目录

R与Python巅峰对决

如果你是数据分析领域的新兵,那么你一定很难抉择——在进行数据分析时,到底应该使用哪个语言, R还是Python ?在网络上,也经常出现诸如“我想学习机器语言,我应该用哪个编程语言”或者“我想快速解决问题,我应该用

R

还是

Python

”等这类问题。尽管两个编程语言目前都是数据分析社区的佼佼者,但是它们仍在为成为数据科学家的首选编程语言而战斗。今天,就让我们从数据科学的角度,一步步比较这两大编程语言。

1 对阵双方介绍

http://img03.store.sogou.com/net/a/04/link?appid=100520031&w=710&url=http://mmbiz.qpic.cn/mmbiz/wc7YNPm3YxVLRD5noY4AvOBcVDcp8FQTn5oAvpn6xg1kCBgejTMHrxAicplNhaeWRN8ibodgKtOB9dt2ZbW2mSqg/0?wx_fmt=jpeg

Ladies and Gentlemen

,让我们隆重的介绍今天的对阵双方: R 和 Python !

R语言当前版本是 2015 年 6 月更新的

2.1版。 Python

2

当前版本是 2015 年 5 月更新的

2.7.10

版,

Python 3

当前的版本是 2015 年 2 月更新的

3.4.3

版。

http://img03.store.sogou.com/net/a/04/link?appid=100520031&w=710&url=http://mmbiz.qpic.cn/mmbiz/wc7YNPm3YxVLRD5noY4AvOBcVDcp8FQT7nRVOHMibWbPKKQbgrNQQ8XIElSZedML0ibKOWQyMQgQ3RfKCv5HY6xw/0?wx_fmt=jpeg

R

语言是

Ross Ihaka 和 Robert Gentleman

于 1995 年开发的,作为贝尔实验室

S

编程语言的一种实现,其开发环境主要由 C 语言, Fortran 和 R 来完成。

Python

的发布年份其实远在

R

之前。

Guido Van Rossum

于 1991 年开发完成了 Python ,并由 Python 软件基金会

(PSF)

负责其发展。其开发灵感主要来自 C 语言和

Modula-3

,部分来自 ABC 语言。 Python 的名字取自喜剧

蒙提· 派森的飞行马戏团( Monty Python’s Flying Circus )

http://img03.store.sogou.com/net/a/04/link?appid=100520031&w=710&url=http://mmbiz.qpic.cn/mmbiz/wc7YNPm3YxVLRD5noY4AvOBcVDcp8FQTBMu5FwNaYDvEAz3WZ8bGrSlXpQxtItur2GWZgkY2kJAPKwIoz3qdKw/0?wx_fmt=jpeg

定位

角度看, R 致力于提供更好的,对用户友好的数据分析、统计分析和绘图模型;而

Python

则强调生产效率和代码的可读性。

http://img03.store.sogou.com/net/a/04/link?appid=100520031&w=710&url=http://mmbiz.qpic.cn/mmbiz/wc7YNPm3YxVLRD5noY4AvOBcVDcp8FQTibcYAFEJ6E3CstUSdU8ehcOKElibOVsZl8Z6xQicFarSz8muCgLNSiciaeQ/0?wx_fmt=jpeg

双方的

用户群 也有一定的差异。R主要用于学术和研究领域,如今正在快速拓展其企业市场的运用。Python的使用者,是那些想深入钻研数据分析或者应用统计技术的程序员,以及向数据科学寻求帮护的开发者。用一句话总结:“越接近统计研究跟数据分析人,越倾向R;越接近工程开发工程环境的人,越倾向Python”。

http://img03.store.sogou.com/net/a/04/link?appid=100520031&w=710&url=http://mmbiz.qpic.cn/mmbiz/wc7YNPm3YxVLRD5noY4AvOBcVDcp8FQTz9wsof5Sc3RNlE3RN0DK9P13JPiafyvwWnEn1ebK1xO895eaywGHgCA/0?wx_fmt=jpeg

R和Python都得到大量的

社区支持 ,包括邮件列表(Mailing Lists)、用户贡献的文档、以及Stackoverflow网站。此外,R还可以从研究人员、数据科学家、统计学家和数量分析专家那里得到更多的支持;而Python则从开发者和程序员那里得到的支持。

http://img03.store.sogou.com/net/a/04/link?appid=100520031&w=710&url=http://mmbiz.qpic.cn/mmbiz/wc7YNPm3YxVLRD5noY4AvOBcVDcp8FQT4xP8GD8w0xwHF5rJfdm6If7RtJibxt1j8XL5icXibAOgyy2EEECicic83XA/0?wx_fmt=jpeg

实用性 来讲,R通过几行代码就可以写出统计模型,尽管R有样式表,但并不是每个人都使用它们,可以用若干种方式写出同样的功能。在Python中写代码和调试代码则更容易一些,主要是因为它的“优美”语法。但是代码的缩进会影响它的意思。并且,在Python中,永远只有一种方式来写同样的功能。

http://img03.store.sogou.com/net/a/04/link?appid=100520031&w=710&url=http://mmbiz.qpic.cn/mmbiz/wc7YNPm3YxVLRD5noY4AvOBcVDcp8FQT1ibMOwCS6uke9oWaNcSp32eZqZF9LczZIoicDzibxcA3aia3VtmYKUbhfA/0?wx_fmt=jpeg

灵活性 方面,在R中使用复杂的公式很容易。各种各样的统计检验和统计模型都是现成的并且容易使用;相比R,Python在完成以前没有做过的新奇的事情上,很灵活,开发人员也会用它写网站或其它应用的脚本。

http://img03.store.sogou.com/net/a/04/link?appid=100520031&w=710&url=http://mmbiz.qpic.cn/mmbiz/wc7YNPm3YxVLRD5noY4AvOBcVDcp8FQTczAPdfFzGrqHE79R40yic4KZRWqvtI1GDCMibTDaBib4NZy8hLueCcwgg/0?wx_fmt=jpeg

关于

易学习性 ,开始学习R时有一个陡峭的学习曲线,一旦了解了最基本知识,就能很容易地学习更高级的知识。因此,对于有经验的程序员,R并不难。建议R的学习者查看DataCamp上的练习和教程。

由于Python看重可读性和易用性,使得它的学习曲线相对比较低并且平缓。因此,对于初级程序员,Python 被认为是一个很好的编程语言。对于Python学习者的建议是,尝试用《笨办法学Python》学习的同时看视频做练习。

http://img03.store.sogou.com/net/a/04/link?appid=100520031&w=710&url=http://mmbiz.qpic.cn/mmbiz/wc7YNPm3YxVLRD5noY4AvOBcVDcp8FQTa9YhgW14RV25k8IsuLXDdPAgA97qA1c9XE603Tx4lNFfVOic6AtS5ow/0?wx_fmt=jpeg

两者都有自己的

代码库 。CRAN(The Comprehensive R Archive Network)是一个很大的R包库,用户很容易为其贡献代码。R包是一个包含R函数、数据和编译代码的集合,R包在R中用一行代码即可安装。PyPi(Python Package Index)是Python软件库,用户可以为PyPi贡献代码,但实践起来有点困难。

计算机科学教授Norm Matloff 曾说过,“Python并未建立起一个能与CRAN媲美的巨大的代码库,R在这方面领先巨大。但是,统计学并不是Python的中心任务。”

http://img03.store.sogou.com/net/a/04/link?appid=100520031&w=710&url=http://mmbiz.qpic.cn/mmbiz/wc7YNPm3YxVLRD5noY4AvOBcVDcp8FQTPrtkxjQS9rOFVoT0MRqBb2ab8x7SZEuuY7rsxSxkNGsOMfwxfBO5UA/0?wx_fmt=jpeg

其实R与Python并不是完全孤立的,在R中用户可以通过rPython包运行Python代码,从Python传递或获取数据,调用Python函数或者方法。而在Python中也可以使用RPy2包运行R代码,这提供了一个从Python到R的底层接口。

http://img03.store.sogou.com/net/a/04/link?appid=100520031&w=710&url=http://mmbiz.qpic.cn/mmbiz/wc7YNPm3YxVLRD5noY4AvOBcVDcp8FQTxw2RI1jMibadMdoDj00G5nXicHfPvwGIV9xEkaNIoHFlNHSPbeicakFew/0?wx_fmt=jpeg

以上,从定性的角度进行了比较。现在,看看双方的定量数据。小二,上数据!

http://img03.store.sogou.com/net/a/04/link?appid=100520031&w=710&url=http://mmbiz.qpic.cn/mmbiz/wc7YNPm3YxVLRD5noY4AvOBcVDcp8FQTHibbmfBsXxf3XR2DTDiccUF9sibib2rOFxZ7aia1zXd6KtHxLg2SI6hrvqg/0?wx_fmt=jpeg

先看

人气排名 ,下图左边为2013-2015年2月R和Python人气比较(Tiobe指标),右边为Redmonk排名,它比较了GitHub和Stackoverflow上编程语言的相对性能。

http://img03.store.sogou.com/net/a/04/link?appid=100520031&w=710&url=http://mmbiz.qpic.cn/mmbiz/wc7YNPm3YxVLRD5noY4AvOBcVDcp8FQTWeAuHNFRnfy1PfHGgWkDG7u54GBJx00bP32p97T59F0nplugPBr9uQ/0?wx_fmt=jpeg

再看

工作和薪资 ,2014 Dice Tech薪金调查显示,具有高薪技能和丰富经验的R使用者的平均工资为115,531美元,而Python则为94,139美元

http://img03.store.sogou.com/net/a/04/link?appid=100520031&w=710&url=http://mmbiz.qpic.cn/mmbiz/wc7YNPm3YxVLRD5noY4AvOBcVDcp8FQTuekFz8Kwb6N5eQVoLV2LrOCrmFFo5iaoQwoKgCm48JBF9kzYre97GHg/0?wx_fmt=jpeg

#2

数据分析战场

http://img03.store.sogou.com/net/a/04/link?appid=100520031&w=710&url=http://mmbiz.qpic.cn/mmbiz/wc7YNPm3YxVLRD5noY4AvOBcVDcp8FQT2GToWpqOuoGGEVibWOUCMnZWl34sBGLPuoSeE25m5L9uluJFPxNNhTw/0?wx_fmt=jpeg

首先是

用途 。R的主要应用场景是,当数据分析任务需要独立运算,或者需要在单个服务器上分析;Python的一般应用场景是,数据分析任务需要与网页应用整合,或者当统计代码需要并入成品数据库。

http://img03.store.sogou.com/net/a/04/link?appid=100520031&w=710&url=http://mmbiz.qpic.cn/mmbiz/wc7YNPm3YxVLRD5noY4AvOBcVDcp8FQTxxujaWnicm7kMia2R7M1YN6vfzhu7dADo1tLw4vLDsicQkSKzsrj9EGyw/0?wx_fmt=jpeg

任务 类型划分,做探索性研究时,R语言很适合初学者。几行代码便可写出统计模型;而作为一个完整成熟的程序语言,Python是为产品使用进行算法执行的一个工具。

数据处理能力 上,使用R进行数据分析很容易上手,因为它具有庞大数量的包、方便使用的检验以及在使用公式方面的优势。做基本数据分析时,R语言更方便,不需要额外安装包,大的数据库需要使用类似data.table和dplyr包。过去,Python数据分析包的幼年期曾是个问题,但是现在已经得到很大的改善,用Python进行数据分析时,你需要使用NumPy、Pandas和其它的程序包。

http://img03.store.sogou.com/net/a/04/link?appid=100520031&w=710&url=http://mmbiz.qpic.cn/mmbiz/wc7YNPm3YxVLRD5noY4AvOBcVDcp8FQT6kbnd8Mz87s1AOhcyFDsHSUG6Xn6KXzWcOyPyghnhX9NFgfJUc6lbg/0?wx_fmt=jpeg

如何上手 也是比拼的一个方面。R的集成开发环境(IDE)可以选择RStudio。R最受欢迎的程序包有:dply、plyr和data.table(易于操作数据),stringr(易于操作字符串),zoo(处理规则和不规则时间序列),ggvis、lattice和ggplot2(数据可视化),caret(机器学习),建议初学者查看DataCamp上的课程和教程。

Python的集成开发环境(IDE)有很多,其中Spyder和Python Notebook最受欢迎。建议初学者查看Rodeo(被称为“Python到数据科学IDE”)。Python最受欢迎的程序包有:pandas (易于操作数据),SciPy/NumPy(科学计算),sckikit-learn(机器学习),matplotlib(用于作图),statsmodels(数据探索、统计模型估计、统计检验和单元测试)。

http://img03.store.sogou.com/net/a/04/link?appid=100520031&w=710&url=http://mmbiz.qpic.cn/mmbiz/wc7YNPm3YxVLRD5noY4AvOBcVDcp8FQThnzibu3GXLZAc862I77rA9gcj19MIibbFTFo8gEUWjenJfmiaga8mvUfQ/0?wx_fmt=jpeg

关于

技术支持 ,使用R进行数据分析有很多技术支持,包括Stackoverflow、Rdocumentation,(R文档整合)和R-help 邮件列表。

Python的数据分析问题可以通过以下方式获得支持:Stackoverflow和邮件列表。

邮件列表包括pydata(关于使用Python进行数据分析和Pandas包)、pystatsmodels (Statsmodels和pandas包的问题)、numpy-discussion (Numpy包的问题)和sci-py user(大部分是SciPy或者科学问题)

http://img03.store.sogou.com/net/a/04/link?appid=100520031&w=710&url=http://mmbiz.qpic.cn/mmbiz/wc7YNPm3YxVLRD5noY4AvOBcVDcp8FQThU8mXsvdHViceQHq8bxGzRRea2AvzWW4k5SJkFvDJDnDGS2icdeaN8Dg/0?wx_fmt=jpeg

同样,定性对比后再看看R和Python的量化战争!

从整体数据来看,在做数据分析时使用R的人数要多于使用Python(下图左:2014用于数据分析的程序语言)。在2014年,有23.45%的人同时使用R与Python(下图右:2014年R和Python使用分析)。

http://img03.store.sogou.com/net/a/04/link?appid=100520031&w=710&url=http://mmbiz.qpic.cn/mmbiz/wc7YNPm3YxVLRD5noY4AvOBcVDcp8FQTWUiaLqiaEgNVXbOenjCwm2gl7apTVEYdKhdiaeybsN2yAem8etAcHxhZA/0?wx_fmt=jpeg

在2008-2014年5月之间,Stack Overflow上问题标签是”R” 和/或 “Python”、“Pandas”的数量,R明显领先。在2015年3月12日到4月10日之间,在twitter上统计rstats, python numpy, python pandas和numpy这几个关键词,活跃度最大的是rstats。

http://img03.store.sogou.com/net/a/04/link?appid=100520031&w=710&url=http://mmbiz.qpic.cn/mmbiz/wc7YNPm3YxVLRD5noY4AvOBcVDcp8FQTCKL8tk5rVmghW7KK8QK5LoLMsNbaP4RJbkFLOJVG90tJhEsjOSem4g/0?wx_fmt=jpeg

工作和薪资方面,

O’Reilly

2014数据科学工资调查显示,

R

Python

平均年收入范围都是 11 万美元到 12

.

5万美元之间。

Indeed.com

上 R 与 Python 的工作趋势显示, Python 的工作需求量高于 R 。

http://img03.store.sogou.com/net/a/04/link?appid=100520031&w=710&url=http://mmbiz.qpic.cn/mmbiz/wc7YNPm3YxVLRD5noY4AvOBcVDcp8FQThEVoDbCNythUKYbMZkY8PHSVRoUPM6v2vzia6iaiaEyJtvribickBDbd7fg/0?wx_fmt=jpeg

现在很多人都选择同时使用R和Python。有的策略是利用两种语言最好的部分——初始分析在R语言中进行,在需要更严格的分析、团队工作或者发布代码和数据产品时开始转换到Python。有人是用R进行统计检验、画图和检查大数据,必须写算法时,则更倾向于用Python。也有人说,更倾向于在通用语言中做数学计算,而不是用数学语言进行通用编程。

http://img03.store.sogou.com/net/a/04/link?appid=100520031&w=710&url=http://mmbiz.qpic.cn/mmbiz/wc7YNPm3YxVLRD5noY4AvOBcVDcp8FQTmKbW84y7uMq6R2cUAxEZBZy4dKEErlynNSIYD1XRJcZiblMQFiaBMQZA/0?wx_fmt=jpeg

#3 总决选:优缺点

http://img03.store.sogou.com/net/a/04/link?appid=100520031&w=710&url=http://mmbiz.qpic.cn/mmbiz/wc7YNPm3YxVLRD5noY4AvOBcVDcp8FQTdKXCEr5408HaWxibQCbbZSIsQw3V9VGWXtYk3ZeuMbZha4FWdYkJh0g/0?wx_fmt=jpeg

现在来比较一下两者的优缺点。

R最大的优点在于其作图能力 ,俗话说,一图抵千言,相比单看原始数据,可视化后的数据能被更高效、更有效的理解。利用ggplot2 可以绘制优美的图表,使用图表算法创造图层、定制图表;lattice易于展示多变量关系;rCharts从R中建立、定制和呈现交互式Java可视化;googleVis利用Google表格工具在R中可视化数据;用ggvis对一个网页浏览器进行渲染时,可以实现图像的交互式语法,例如在R中可视化Facebook好友。

IPython最大的优点在于,

IPython Notebook使

得用Python分析数据变得容易 ,它可以将你的分析放在一个文件中。用Python处理数据可以简化工作流程。它是一个组合,其中包括:交互式Python数据探索、在一个环境下为文档提前写好程序、文本和公式。你可以跟同事分享笔记本,并且不用他们安装任何东西。IPython大大减少了管理代码、输出和笔记本文件的时间,这样可以有更多的时间做实际工作。

http://img03.store.sogou.com/net/a/04/link?appid=100520031&w=710&url=http://mmbiz.qpic.cn/mmbiz/wc7YNPm3YxVLRD5noY4AvOBcVDcp8FQToVUzMwTzm2Hw7aibzF6ScSU8rYl84rLyLzqDexf4f7ezEcGl0fibBzBA/0?wx_fmt=jpeg

R 的生态系统是它的另一项优势 ,先进的界面程序包使其能与开源语言进行交流,这让你把工作流程连成一串,对数据分析尤其有用。程序包可以从:CRAN( “Task Views”列出了大量可用的R语言程序包)、Bioconductor (生物信息学的开源软件)、GitHub (基于网络的Git库主机服务)获得,在Rdocumentation(首个R文档聚合器)中很容易搜索到这些资源。R的用户社区也做得非常优秀,包括Meetup群组(其中一些由R用户社区的公司资助)、博客和社交网络。

Python是

一种通用语言,其另一个优点在于它的可读性和学习曲线 ; 同时,Python简单直观,它对可读性的重视更放大了这一特征。这就解释了为什么Python的学习曲线相对平缓,因而很多程序员很熟悉它。并且,你写一个程序的速度也得到正面影响:编程时间更少了,玩耍时间更多了。

Python的测试框架 确保代码的可重复性和可靠性,一个内置低壁垒的测试框架能够支持一个很好的测试覆盖率。其测试工具分类包括:UnitTest Python(标准库中首个测试框架)、Nose (UnitTest的扩展,很多程序包使用它,如pandas)、DocTest (基于Python标准解释器的输出很容易生成测试),Pytest (当进行复杂的函数测试时,可以进行小测试)。

http://img03.store.sogou.com/net/a/04/link?appid=100520031&w=710&url=http://mmbiz.qpic.cn/mmbiz/wc7YNPm3YxVLRD5noY4AvOBcVDcp8FQTlE4iaPJFI6K9LdJiawApbb8TnEXbOCtNjnuia1foItsDQUohIkP3ygHkA/0?wx_fmt=jpeg

R有一个不可替代的优势:统计的通用语言。 R是统计学家为统计学家开发的,他们通过R代码和程序包交流统计分析思想和方法,即使是不会计算机编程语言的统计学家、工程师和科学家也会觉得R容易使用,因此提高了产业采用率。R也被用在金融、药物、医学和市场等领域,并且其作为商业分析工具的地位正在不断增长,在商业领域的最重要价值正被一些有才能的人所了解使用,R在学术界已经被广泛使用。R的使用量正在快速增长,其在学术文章中处于常用软件排名第三的位置(紧随SAS和SAP),且这一位置正在被巩固。

与R相比,Python是一个多用途语言。作为一个被大多数程序员所熟知的普遍且易于理解的编程语言,Python也能把不同背景的人聚集到一起。例如,一些机构不想雇佣数据分析师或者雇佣新的数据分析师比较困难,就会培训老员工使用Python。这意味着,Python是一个现成的编程语言,它能够作为一个单独的工具与你工作流程中任意一部分结合。

http://img03.store.sogou.com/net/a/04/link?appid=100520031&w=710&url=http://mmbiz.qpic.cn/mmbiz/wc7YNPm3YxVLRD5noY4AvOBcVDcp8FQTslDomUCdN6M9Fogg1WXlom56oWrJJN0koSzrpuG37H6MIiaeoa1Kib9g/0?wx_fmt=jpeg

两者的缺点是什么呢?R运行慢,而这一点是故意为之。

R的设计目的是使数据分析和统计分析变得容易 ,而不是为了让你的电脑“活得更轻松”。它有一个不完整的非正式定义,主要通过实现工作的方式来定义。除了设计和实现,大量R代码慢的原因很简单——代码写的很差。为改善这一点,

可使用提高R性能的程序包 :pqR(R翻译器的一个新版本)、renjin、FastR(在Java中重新写R)、Riposte(一个很快的解析器和JIT)、RevoScaleR(用来处理大数据的商业软件)、Foreach(用来提高并行编程的商业工具)。

Python最

大的问题在于其可视化 ,选择数据分析软件时,可视化是一个重要原则。虽然Python有一些很好的可视化程序库,包括:Seaborn(基于matplotlib的程序库)、Bokeh(交互式可视化程序库)和Pygal(建立动态可伸缩向量图形(SVG))。但Python提供的可选择程序库过多,且与R对比,在Python中进行可视化有些复杂,呈现的结果也并不是很令人满意。

http://img03.store.sogou.com/net/a/04/link?appid=100520031&w=710&url=http://mmbiz.qpic.cn/mmbiz/wc7YNPm3YxVLRD5noY4AvOBcVDcp8FQTKB9wBHKDgMJjOYh4n5Bkick4wWD0JOnc3CVB4UiaefS7tUqHwODDFL7A/0?wx_fmt=jpeg

因为由统计学家开发,

R另一个缺点是它陡峭的学习曲线 。 尽管任何人都可以使用GUI得到结果,但没有人能够完全避开写程序,并且找程序包很花时间。你可以通过使用正确的工具解决这个问题,利用以下这些资料可以帮组你克服这个陡峭的学习曲线:包括DataCamp上的练习和教程和上Rdocumentation搜索程序包。

Python另

一个问题是它还不成熟 ,造成一种更受限制的方式去思考数据分析。截至目前,没有模块能够代替基本R程序包的100个。Python正在努力客服这一问题, 其中一些解决办法包括:IPython中的R扩展允许在IPython Notebook中方便使用R;现有资源和约定格局充当了一个重要角色:Matlab通常用于发布开放的研究代码,Python用于数学,R 用于统计。Mlabwrap 连接了Python和Matlab,但是有些缺点,因此你需要学会两种程序语言,并且需要有一个Matlab许可证。

http://img03.store.sogou.com/net/a/04/link?appid=100520031&w=710&url=http://mmbiz.qpic.cn/mmbiz/wc7YNPm3YxVLRD5noY4AvOBcVDcp8FQTiaWvxpYf8u11tO3ib6csdicv1iaDdgJha4SByL2aWWicV3Erlbv8VUCibChg/0?wx_fmt=jpeg

两种语言有很多共同优点。其一是

开源 ,R和Python都是对任何人免费,其它统计软件(如SAS和SPSS)都是商业工具。

其二是他们都是

高级工具 ,很多统计学的新进展会先在R和小范围的Python开源程序包中出现,这比商业平台要早。

第三是它们都

提供在线社区 ,相对商业软件提供收费的用户支持,R和Python利用在线社区对它们相应的用户提供支持。

最后,二者

使用者的薪水都比较高 ,根据O’Reilly 2013数据科学工资调查显示,主要使用开源工具的数据科学家(130,000美元)比使用商业工具的数据科学家(90,000美元)的工资中值更高。

http://img03.store.sogou.com/net/a/04/link?appid=100520031&w=710&url=http://mmbiz.qpic.cn/mmbiz/wc7YNPm3YxVLRD5noY4AvOBcVDcp8FQTzABEzmBZL8g9gC6vEkNXQ4hTlY6umBHSQFzQb57OmmsTZfIyZUyxBw/0?wx_fmt=jpeg

#4 那么赢家是……

最后的结果是平局!哪个工具更适合,取决于你这个数据科学家如何去挑选一个最适合你需要的程序语言。下面的问题可以指导你做出决定。

1.你要解决什么样的问题

2.你学习一门程序语言的成本?学习一个能更好地解决问题的新系统会花费时间,但依旧使用你熟悉的系统并不能解决你要解决的问题。

3.在你的领域最常用的工具是什么?

在你的领域中还有什么可用的工具,它们和那些常用工具有什么关系?

http://img03.store.sogou.com/net/a/04/link?appid=100520031&w=710&url=http://mmbiz.qpic.cn/mmbiz/wc7YNPm3YxVLRD5noY4AvOBcVDcp8FQTGBndVDWxEM7NDibeD0Px2TcaWnJOQuMWjtSPYN2w0iaf0Gv5ZjA2C0Zw/0?wx_fmt=jpeg

参考资料

http://img03.store.sogou.com/net/a/04/link?appid=100520031&w=710&url=http://mmbiz.qpic.cn/mmbiz/wc7YNPm3YxVLRD5noY4AvOBcVDcp8FQTFTC37zqfMFzDf7OV7DOYKbBcXHZPpk5WKTR3rd26BGezhzaaYsvDFA/0?wx_fmt=jpeg

文章转载:http://sanliangzhi.com/hot/1173.html