R编程的简介

173 阅读4分钟

什么是R编程?

R是当今最流行的统计编程脚本语言之一。自2010年代初以来,对R程序员的需求不断上升,R仍然享有数据科学家首选编程语言的地位。R最近也被改编为深度学习,这有助于一些统计学家在各自的领域轻松地进行深度学习,使R成为当前蓬勃发展的人工智能场景中不可或缺的一部分。

R编程语言的历史

R的前身是S(S代表统计)语言,由AT&T开发,用于统计计算。AT&T在1976年开始了S的工作,作为其内部统计分析环境的一部分,早期以FORTRAN库的形式实现。 S背后的人是John Chambers。S的单字母名称的灵感来自于当时无处不在的C编程语言。 R由Ross Ihaka和Ross Gentleman开发,该项目于1992年在新西兰的奥克兰大学酝酿。第一个版本于1995年发布,第一个稳定的测试版于2000年出现。 R最初与S不同,它在现有的S功能基础上增加了词汇范围语义。R的单字母名称又是受S的启发,取自两位作者名字的第一个字母。R是在GNU公共许可证下开发的,可公开发行。S编程语言后来被TIBCO公司从AT&T收购后发展为S-plus,增加了一些高级分析能力和OOP能力。

R编程的特点

  • 平台独立 -可在:多个计算平台上运行,如Windows、Linux和Mac OS。
  • 频繁的发布 - 导致及时的错误修复和更少的挫折感。
  • 卓越的图形 - 与美学图形库如:ggplot2和plotly兼容,确保出版质量的图形可视化.
  • 多样性 - 开发者社区每天都在开发和改进数百个用于特定目的的软件包。

R编程的优势

与S和S-plus相比,R仍然是更主要的统计编程语言,这是对的,因为它有许多优点。

  • R的开发意图是建立一个S的开源实现,因此R现在和将来都是一个开源的软件。它几乎可以在任何地方运行,而且不消耗太多的空间。
  • 除了统计处理功能,R还可以作为一种通用的编程语言,具有函数式编程和[面向对象编程](/community/tutorials/oops-concepts-java-example)的能力。
  • 由于ggplot2和plotly的参与,R的可视化功能比一些商业产品优越得多。
  • R提供的图形更漂亮,受到全世界专家的青睐。它只接受命令作为输入,这使得它很容易将命令保存为脚本并跨域移植。你的命令历史和数据在会话之间被保存,因此你可以从你离开的地方继续使用,没有什么麻烦。 R有一个丰富和反应迅速的在线开发者社区。

R的局限性

尽管有这么多的优点,R也远非完美,就像其他语言一样。在投身于学习R之前,牢记这些缺点将是有益的。

  • 陡峭的学习曲线。R不是一种容易上手的语言。初学者发现由于命令行界面,他们的脚很难被弄湿。像RStudio这样的集成开发环境将在一定程度上帮助克服这一限制。此外,大量的软件包会让初学者感到困惑。
  • 对物理内存的渴望。与其强有力的竞争者Python不同,R将其所有数据存储在物理内存中。这使得它很难处理巨大的数据集。但幸运的是,Hadoop对R的集成最近有了很大的改进,在很大程度上缓解了这个问题。
  • 低级执行。在你的代码能够像在MATLAB或Python上那样快速运行之前,R需要进行大量的优化。在设计程序时,需要对对象的内部工作有很强的理解,以避免缓慢的执行。

R的可用性

R作为一个命令行界面环境,可以在CRAN项目(代表综合R档案网络)中找到。然而,作为一个初学者,在IDE的帮助下,你会学得更快,其中有相当多的R。RStudio :最流行的R入门IDE,有桌面版和企业版。

  • StatET。一个基于Eclipse的IDE,用于R编程和包的构建.
  • ESS-R项目。除了R之外,还支持几个统计包,如S-Plus、SAS、Stata和OpenBUGS/JAGS。