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
如图,拐点已求出。