1.1 R的使用
R是一种区分大小写的语言,R中有多种数据类型,包括向量、矩阵、数据框(与数据集类似)以及列表(各种对象的集合)。
R使用<-,而不是传统的=作为赋值符号。也可以使用->进行反方向赋值。
> x <- rnorm(5) > x [1] 0.009310966 0.225263450 [3] 0.676661303 1.407043899 [5] -0.016697707
注释由#开头,在#后出现的热河文本都会被R解释器忽略。
>#一个R代码示例 > age <- c(1,3,5,2,11,9,3,9,12,3) > weight <- c(4.4,5.3,7.2,5.2,8.5,7.3,6.0,10.4,10.2,6.1) > mean(weight) [1] 7.06 > sd(weight) [1] 2.077498 > cor(age,weight) [1] 0.9075655 > plot(age,weight)
想要大致了解R能做出何种图形,可以在命令行中输入:
> demo(graphics)
1.2 获取帮助
R提供了大量的帮助功能,学会如何使用这些帮助文档可以在相当程度上助力你的编程工作。
1.3 工作空间
工作空间(workspace)就是当前R的工作环境,它储存着所有用户定义的对象。在一个R会话结束时,你可以将当前工作空间保存到一个镜像中,并在下一次启动R的时候自动载入它。
1.4 输入和输出
函数source("filename")可在当前会话中执行一个脚本;filename按照管理,以.R为拓展名,但是并不是必须的。
函数sink("filename")将输出重定向到文件filename中,默认情况下,如果文件已存在,则它的内容将被覆盖。
- 使用参数append=TRUE可以将文本追加到文件后,而不是覆盖它。
- 参数split=TRUE可将输出同时发送到屏幕和输出文件中。
图形输出:要重定向图形输出,使用下表中的函数即可,最后使用dev.off()将输出返回到终端。
1.5 包
使用命令install.package()用来第一次安装一个包,不加参数执行将显示一个CRAN的镜像站点的列表。
如果知道自己想安装的包的名称,可以直接将包名作为参数提供给这个函数例如install.package("gclus")。
一个包仅需安装一次,需要更新的时候使用命令update.package()。
当需要调用这个包的时候,使用library("gclus"),如果需要,你可以自定义启动环境以自动载入会频繁使用的那些包。
1.6 批处理
多数情况下,我们都会交互地使用R:在提示符后输入命令,接着等待该命令的输出结果。偶尔,我们可能想要以一种重复的,标准化的,无人值守的方式执行某个R程序。例如,你可能需要每一个月生成一次相同的报告,这时就可以在R中编写程序,在批处理模式下执行它。
在Linux或OS X系统下,可以在终端窗口中使用命令:
R CMD BATCH options infile outfile
其中infile是包含了要执行的R代码所在的文件的文件名;
outfile是接受输出文件的文件名;
options部分则列出了控制执行细节的选项。
对于windows,则使用:
"C:\Program Files\R\R-3.3.3\bin\R.exe" CMD BATCH --vanilla --slave "C:\my projects\myscript.R"
1.7 将输出用为输入——结果的重用
R的一个非常实用的特点是,分析的输出结果可以轻松保存,并作为进一步分析的输入使用。
请发表评论