R语言是一种什么样的语言?

Python019

R语言是一种什么样的语言?,第1张

R 语言,一种自由软件编程语言与操作环境,主要用于统计分析、绘图、数据挖掘。R 本来是由来自新西兰奥克兰大学的罗斯·伊哈卡和罗伯特·杰特曼开发,现在由“R 开发核心团队”负责开发。R 基于 S 语言的一个 GNU 计划项目,所以也可以当作 S 语言的一种实现,通常用 S 语言编写的代码都可以不作修改的在 R 环境下运行。

R 语言

R 的源代码可自由下载使用,亦有已编译的可执行文件版本可以下载,可在多种平台下运行,包括 UNIX(也包括 FreeBSD 和 Linux)、Windows 和 MacOS。R 主要是以命令行操作,同时有人开发了几种图形用户界面,其中 RStudio 是最为广泛使用的集成开发环境。

功能

R 内置多种统计学及数字分析功能。R 的功能也可以透过安装包(Packages,用户撰写的功能)增强。因为 S 的血缘,R 比其他统计学或数学专用的编程语言有更强的面向对象(面向对象程序设计, S3, S4 等)功能。

R 的另一强项是绘图功能,制图具有印刷的素质,也可加入数学符号。

虽然 R 主要用于统计分析或者开发统计相关的软件,但也有人用作矩阵计算。其分析速度可媲美专用于矩阵计算的自由软件 GNU Octave 和商业软件 MATLAB。

R是用于统计分析、绘图的语言和操作环境。R是基于S语言的一个GNU项目,所以也可以当作S语言的一种实现,通常用S语言编写的代码都可以不作修改的在R环境下运行。

R 是统计领域广泛使用的诞生于 1980年左右的 S 语言的一个分支。 S的主要设计者John M. Chambers 因为S语言方面的工作获得了1998年 ACM 软件系统奖(ACM Software Systems Award)。

R可以在多种平台下编译和运行,包括UNIX (也包括FreeBSD和Linux)、Windows和MacOS。

该语言的语法表面上类似 C,但在语义上是函数设计语言的(functional programming language)的变种并且和Lisp 以及 APL有很强的兼容性。特别的是,它允许在“语言上计算”(computing on the language)。这使得它可以把表达式作为函数的输入参数,而这种做法对统计模拟和绘图非常有用。

可以查看segmented包求拐点的例子。

R中运行:

library(segmented)

?segmented

。。。。。。

#An example using the default method:

# Cox regression with a segmented relationship  

## Not run:

library(survival)

data(stanford2)

o<-coxph(Surv(time, status)~age, data=stanford2)

os<-segmented(o, ~age, psi=40) #estimate the breakpoint in the age effect

summary(os) #actually it means summary.coxph(os)

plot(os) #it does not work

plot.segmented(os) #call explicitly plot.segmented() to plot the fitted piecewise lines

如图,拐点已求出。