R语言是属于GNU系统的一个自由、免费、源代码开放的软件,它是一个用于统计分析、统计制图、报告制作的优秀工具。R的核心是解释计算机语言,它允许分支和循环以及使用函数模块化编程。R语言可以使用C,C++ , .NET,Python 或 FORTRAN 语言程序集成以提高效率。

R是下GNU风格公共版权免费分发软件,以及GNU计划的正式组成部分称为GNU S.

R是统计领域广泛使用的诞生于1980年左右的S语言的一个分支。可以认为R是S语言的一种实现。而S语言是由AT&T贝尔实验室开发的一种用来进行数据探索、统计分析和作图的解释型语言。最初S语言的实现版本主要是S-PLUS。S-PLUS是一个商业软件,它基于S语言,并由MathSoft公司的统计科学部进一步完善。

后来新西兰奥克兰大学的Robert Gentleman和Ross Ihaka及其他志愿人员开发了一个R系统,由“R开发核心团队”负责开发。R可以看作贝尔实验室(AT&T BellLaboratories)的RickBecker,JohnChambers和AllanWilks开发的S语言的一种实现。当然,S语言也是S-Plus的基础。所以,两者在程序语法上可以说是几乎一样的,可能只是在函数方面有细微差别,程序十分容易地就能移植到一程序中,而很多一的程序只要稍加修改也能运用于R。

CRAN为Comprehensive R Archive Network(R综合典藏网)的简称。它除了收藏了R的执行档下载版、源代码和说明文件,也收录了各种用户撰写的软件包。现时,全球有超过一百个CRAN镜像站。

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. To download R, please choose your preferred CRAN mirror.

R官网: https://www.r-project.org

 

R 特点

R是一种编程语言和软件环境用来进行统计分析,图形表示和报告。有以下的R重要的特点:

  • R是一个发展良好,简单有效的编程语言,其中包括条件,循环,用户定义的递归函数以及输入和输出设备。

  • R有一个有效的数据处理和存储工具,

  • R提供了一套操作符用于计算数组,列表,向量和矩阵。

  • R提供了一个大的,连贯和综合集合用于数据分析工具。

  • R提供了图形化工具,数据分析和显示,并可以直接在计算机纸张或打印。

因此,R是世界上使用最广泛的统计编程语言。这是数据科学家第一选择和支持贡献者充满活力和一个才华的社区。教授在大学和部署关键任务业务中应用R语言。R作为一种统计分析软件,是集统计分析与图形显示于一体的。它可以运行于UNIX、Windows、Mac OS X的操作系统上,而且嵌入了一个非常方便实用的帮助系统,相比于其他统计分析软件,R还有以下特点:

1、R是自由软件。

这意味着它是完全免费、开放源代码。可以在它的网站及其镜像中下载任何有关的安装程序、源代码、程序包及其源代码、文档资料。标准的安装文件身自身就带有许多模块和内嵌统计函数,安装好后可以直接实现许多常用的统计功能。

2、R是一种可编程的语言。

作为一个开放的统计编程环境,语法通俗易懂,很容易学会和掌握语言的语法。而且学会之后,我们可以编制自己的函数来扩展现有的语言。这也就是为什么它的更新速度比一般统计软件,如SPSS、SAS等快得多。大多数最新的统计方法和技术都可以在R中直接得到。

3、所有R的函数和数据集是保存在程序包里面的。

只有当一个包被载入时,它的内容才可以被访问。一些常用、基本的程序包已经被收入了标准安装文件中,随着新的统计分析方法的出现,标准安装文件中所包含的程序包也随着版本的更新而不断变化。在另外版安装文件中,已经包含的程序包有:base一R的基础模块、mle一极大似然估计模块、ts一时间序列分析模块、mva一多元统计分析模块、survival一生存分析模块等等.

4、R具有很强的互动性

除了图形输出是在另外的窗口处,它的输入输出窗口都是在同一个窗口进行的,输入语法中如果出现错误会马上在窗口口中得到提示,对以前输入过的命令有记忆功能,可以随时再现、编辑修改以满足用户的需要。输出的图形可以直接保存为JPG,BMP,PNG等图片格式,还可以直接保存为PDF文件。另外,和其他编程语言和数据库之间有很好的接口。

5、资讯聚集地

如果加入R的帮助邮件列表一,每天都可能会收到几十份关于R的邮件资讯。可以和全球一流的统计计算方面的专家讨论各种问题,可以说是全世界最大、最前沿的统计学家思维的聚集地.

R是基于S语言的一个GNU项目,所以也可以当作S语言的一种实现,通常用S语言编写的代码都可以不作修改的在R环境下运行。 R的语法是来自Scheme。R的使用与S-PLUS有很多类似之处,这两种语言有一定的兼容性。S-PLUS的使用手册,只要稍加修改就可作为R的使用手册。所以有人说:R,是S-PLUS的一个“克隆”。

但是请不要忘了:R是免费的(R is free)。R语言源代码托管在github,具体地址可以看参考资料。

R语言的下载可以通过CRAN的镜像来查找

R语言有域名为.cn的下载地址,有六个,其中两个由Datagurn,由中国科学技术大学提供的。

R语言Windows版,其中由两个下载地点是Datagurn和USTC提供的。

 

R 安装配置

1. 命令安装

yum install R

sudo apt-get update
sudo apt-get install r-base
sudo apt-get install r-base-dev

 

2. 程序安装

Precompiled binary distributions of the base system and contributed packages, Windows and Mac users most likely want one of these versions of R:

Download R for Linux

Download R for (Mac) OS X

Download R for Windows

本文以Mac OS X为例

1. 下载 R-3.4.1.pkg

2. 点击安装

r-yu-yan-de-an-zhuang-yu-kai-fa-01

 

验证安装

$ R

R version 3.4.1 (2017-06-30) -- "Single Candle"
Copyright (C) 2017 The R Foundation for Statistical Computing
Platform: x86_64-apple-darwin15.6.0 (64-bit)

R is free software and comes with ABSOLUTELY NO WARRANTY.
You are welcome to redistribute it under certain conditions.
Type 'license()' or 'licence()' for distribution details.

R is a collaborative project with many contributors.
Type 'contributors()' for more information and
'citation()' on how to cite R or R packages in publications.

Type 'demo()' for some demos, 'help()' for on-line help, or
'help.start()' for an HTML browser interface to help.
Type 'q()' to quit R.

> 

 

R 基本语法

1. Hello 命令行

$ R
> mimvp <- 'hello mimvp.com'
> print(mimvp)
[1] "hello mimvp.com"

 

2. Hello 脚本文件

vim  hello.R

# mimvp.com
# 2017.07.30

mimvp <- "hello mimvp.com"
print(mimvp)

执行命令:

$ Rscript hello.R   
[1] "hello mimvp.com"

 

3. R 多行注释

R 不支持多行注释,但可用 if(FALSE) { recomment blabla...} 实现,大多数编程语言都可用此方法多行注释

# mimvp.com
# 2017.07.30

# recomment multi rows
if(FALSE) {
    "I love you"
    "I love mimvp.com"

    print("I love you")
    print("I love mimvp.com")
}

mimvp <- "hello mimvp.com"
print(mimvp)

 

4. 运算符类型

  • 算术运算符
  • 关系运算符
  • 逻辑运算符
  • 赋值运算符
  • 其他运算符

vim  cal.R

# mimvp.com
# 2017.06.30

v <- c(1, 2, 3)
t <- c(10, 20, 30)

print(v + t)    # 11 22 33
print(t - v)    #  9 18 27
print(t * v)    # 10 40 90
print(t / v)    # 10 10 10

print(t > v)    # TRUE TRUE TRUE

 

更多请参考: R语言基本语法(易百教程)

 

R 开发应用

用于统计分析、统计制图、报告制作的优秀工具。R的核心是解释计算机语言,它允许分支和循环以及使用函数模块化编程。R语言可以使用C,C++ , .NET,Python 或 FORTRAN 语言程序集成以提高效率。

 

 

参考推荐:

Scala 安装与开发

Groovy 安装与开发

Delphi 安装与开发

Perl 安装与开发

Ruby 安装与开发

Python scrapy 安装与开发

Python requests 安装与开发

Python pyspider 安装与开发

Python3 urllib 用法详解

PhantomJS 安装与开发

Node.js 安装与开发