编程语言之R
R语言是主要用于统计分析、绘图的语言和操作环境。 R本来是由来自新西兰奥克兰大学的Ross Ihaka和Robert Gentleman 开发。 (也因此称为R)现在由“R开发核心团队”负责开发。 R是基于S语言的一个GNU项目,所以也可以当作S语言的一种实现,通常用S语言编写的代码都可以不作修改的在R环境下运行。 R的语法是来自Scheme。

R is a free software environment for statistical computing and graphics. It compiles and runs on a wide variety of UNIX platforms, Windows and MacOS.

R 的原始码可自由下载使用,亦有已编译的执行档版本可以下载,可在多种平台下运行,包括UNIX (也包括FreeBSD和Linux)、Windows和MacOS。 R主要是以命令行操作,同时有人开发了几种图形用户界面。
R内建多种统计学及数字分析功能。 R的功能也可以透过安装套件(Packages,用户撰写的功能)增强。因为S的血缘,R比其他统计学或数学专用的编程语言有更强的物件导向(面向对象程序设计)功能。
R的另一强项是绘图功能,制图具有印刷的质素,也可加入数学符号。
虽然R主要用于统计分析或者开发统计相关的软体,但也有人用作矩阵计算。其分析速度可比美GNU Octave甚至商业软件MATLAB。
R的功能能够透过由用户撰写的套件增强。增加的功能有特殊的统计技术、绘图功能,以及编程介面和数据输出/输入功能。这些软件包是由R语言、 LaTeX、Java及最常用C语言和Fortran撰写。下载的执行档版本会连同一批核心功能的软件包,而根据 CRAN纪录有过千种不同的软件包。其中有几款较为常用,例如用于经济计量、财经分析、人文科学研究以及人工智能。
最新版本:3.0
R 3.0.0 带来了约 100 项的新特性,长向量的全面支持和若干项性能提升。长向量(Long Vectors)理论上至多可存储 2^52 个元素,已经远超 CPU 和操作系统地址空间限制。更多说明和代码迁移注意事项可以参考 ?LongVectors . 考虑到向量在 R 中的基础地位,这将给未来 R 对更大规模数据的支撑铺平道路。
另一项值得注意的重要变化是,程序包的 vignette 编译目前已经向 Sweave 以外的引擎开放,即正式引入了 knitr 支持!详情可参看最新版本的 Writing R Extensions 以及 tools::vignetteEngine 。
用户可见的显著变动:
对于此版本的 R (3.0.0),所有包都需要重新安装。
对长度为 2^31 以上向量的全面支持(仅限 64-bit 系统,32-bit 系统将会报错)
64-bit 版本的 R 可分配内存的大小仅受系统的限制。可通过系统工具(如 bash shell 下的 ulimit )来设置单个 R 进程的整体内存占用,尤其是在多用户环境下。有若干包需要 4GB 以上的虚拟内存来加载。
64-bit Windows 版本的 R 可用内存大小默认限制为已安装内存的大小。该值可通过启动参数 --max-mem-size 或环境变量 R_MAX_MEM_SIZE 设置。
使用负数表示颜色值的方式已被全面废弃,统一抛出错误。
官方主页:http://www.r-project.org/

R is a free software environment for statistical computing and graphics. It compiles and runs on a wide variety of UNIX platforms, Windows and MacOS.

R 的原始码可自由下载使用,亦有已编译的执行档版本可以下载,可在多种平台下运行,包括UNIX (也包括FreeBSD和Linux)、Windows和MacOS。 R主要是以命令行操作,同时有人开发了几种图形用户界面。
R内建多种统计学及数字分析功能。 R的功能也可以透过安装套件(Packages,用户撰写的功能)增强。因为S的血缘,R比其他统计学或数学专用的编程语言有更强的物件导向(面向对象程序设计)功能。
R的另一强项是绘图功能,制图具有印刷的质素,也可加入数学符号。
虽然R主要用于统计分析或者开发统计相关的软体,但也有人用作矩阵计算。其分析速度可比美GNU Octave甚至商业软件MATLAB。
R的功能能够透过由用户撰写的套件增强。增加的功能有特殊的统计技术、绘图功能,以及编程介面和数据输出/输入功能。这些软件包是由R语言、 LaTeX、Java及最常用C语言和Fortran撰写。下载的执行档版本会连同一批核心功能的软件包,而根据 CRAN纪录有过千种不同的软件包。其中有几款较为常用,例如用于经济计量、财经分析、人文科学研究以及人工智能。
最新版本:3.0
R 3.0.0 带来了约 100 项的新特性,长向量的全面支持和若干项性能提升。长向量(Long Vectors)理论上至多可存储 2^52 个元素,已经远超 CPU 和操作系统地址空间限制。更多说明和代码迁移注意事项可以参考 ?LongVectors . 考虑到向量在 R 中的基础地位,这将给未来 R 对更大规模数据的支撑铺平道路。
另一项值得注意的重要变化是,程序包的 vignette 编译目前已经向 Sweave 以外的引擎开放,即正式引入了 knitr 支持!详情可参看最新版本的 Writing R Extensions 以及 tools::vignetteEngine 。
用户可见的显著变动:
对于此版本的 R (3.0.0),所有包都需要重新安装。
对长度为 2^31 以上向量的全面支持(仅限 64-bit 系统,32-bit 系统将会报错)
64-bit 版本的 R 可分配内存的大小仅受系统的限制。可通过系统工具(如 bash shell 下的 ulimit )来设置单个 R 进程的整体内存占用,尤其是在多用户环境下。有若干包需要 4GB 以上的虚拟内存来加载。
64-bit Windows 版本的 R 可用内存大小默认限制为已安装内存的大小。该值可通过启动参数 --max-mem-size 或环境变量 R_MAX_MEM_SIZE 设置。
使用负数表示颜色值的方式已被全面废弃,统一抛出错误。
官方主页:http://www.r-project.org/