R vs Python,谁才是数据科学的最佳语言

如题所述

可以去这里看:
http://blog.csdn.net/pinellina/article/details/50781531

从定位角度看,R致力于提供更好的,对用户友好的数据分析、统计分析和绘图模型;而Python则强调生产效率和代码的可读性。

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

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

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

关于易学习性,开始学习R时有一个陡峭的学习曲线,一旦了解了最基本知识,就能很容易地学习更高级的知识。因此,对于有经验的程序员,R并不难。建议R的学习者查看DataCamp上的练习和教程。
由于Python看重可读性和易用性,使得它的学习曲线相对比较低并且平缓。因此,对于初级程序员,Python 被认为是一个很好的编程语言。对于Python学习者的建议是,尝试用《笨办法学Python》学习的同时看视频做练习。

两者都有自己的代码库。CRAN(The Comprehensive R Archive Network)是一个很大的R包库,用户很容易为其贡献代码。R包是一个包含R函数、数据和编译代码的集合,R包在R中用一行代码即可安装。PyPi(Python Package Index)是Python软件库,用户可以为PyPi贡献代码,但实践起来有点困难。
计算机科学教授Norm Matloff 曾说过,“Python并未建立起一个能与CRAN媲美的巨大的代码库,R在这方面领先巨大。但是,统计学并不是Python的中心任务。”

按任务类型划分,做探索性研究时,R语言很适合初学者。几行代码便可写出统计模型;而作为一个完整成熟的程序语言,Python是为产品使用进行算法执行的一个工具。
数据处理能力上,使用R进行数据分析很容易上手,因为它具有庞大数量的包、方便使用的检验以及在使用公式方面的优势。做基本数据分析时,R语言更方便,不需要额外安装包,大的数据库需要使用类似data.table和dplyr包。过去,Python数据分析包的幼年期曾是个问题,但是现在已经得到很大的改善,用Python进行数据分析时,你需要使用NumPy、Pandas和其它的程序包。

如何上手也是比拼的一个方面。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(数据探索、统计模型估计、统计检验和单元测试)。
温馨提示:答案为网友推荐,仅供参考
相似回答