如何学习R作为一种编程语言?

我想知道如何将R语言学习为“编程”语言,而不是将其学习为统计系统。 我的问题是由于缺乏对parsing,评估等function的理解而引起的,这些function可能无法被R用户用“统计”说服频繁使用。

编辑:我一直在探索像Rpy RSPerl rJava这样的工具,并希望(至less)能够理解有助于R与其他编程语言进行通信的概念。

R(R-PHP,RApache等)的Web应用程序的可用性是另外一个激励因素,我可以更深入地了解R的结构。

最后但并非最不重要,我希望能够编写R包,如果不需要的话,这样的理解将是有益的。

对于初学者,你可能想看看John Cook的这篇文章 。 另外请确保您阅读“The R Inferno” 。

R主页上有很多很好的资源,特别是阅读“R介绍”和“R语言定义” 。

一些非常密切相关的stackoverflow问题:

  • 书籍为学习的r语言 。
  • 什么-是-一些好的书籍,networking资源和项目,为学习-R
  • build议上路资源对创业学习的统计语言-R

我最喜欢的一本关于这个主题的书: 由 S语言的创build者约翰·钱伯斯(John Chambers)撰写的“用于数据分析的软件:用R编程” 。

编程语言学习的好书(与R-for-statistics相反)是由Norman Matloff 编写的“R编程艺术”

在这里输入图像描述

这是非常可读的,不认为你是一个计算机科学家,而且R书去,是相当便宜。

我宁愿build议一个好的和全面的开始,像迈克尔·克劳利的R书 。 这是一个易于阅读和完整的R核心function的书籍,统计技巧和一些练习。 它着重于R强度(如线性模型),并给出了有用的编码技巧。 当我在神秘的在线课程上挣扎时,它帮了我很大的忙。

替代文字

我是一个非常实用的学习者,所以这个build议可能是特定于我的学习风格。 我build议开始用任何一种语言开始“学习编程”的最好的地方,就是寻找超出正常经验范围的问题,然后用编程语言来解决问题。

教给我最多关于如何用R编程的项目与统计数据完全无关。

知道像parse()eval()这样的eval()绝不是衡量一个“好R程序员”的标准。 需要大量使用这些function的应用程序不能占据您可以应用R的大部分问题空间。 相反,我认为你应该努力成为一个知道R “好程序员”。 这涉及完善您的解决问题的方法。

编程不是一个旁观者的运动 – 一本好书作为可用工具的参考是必不可less的,但是你需要find一些问题来磨练你的技能。