脚本开发阶段还可以使用编辑器和IDE,但写好后的脚本还是要有终端执行的方式才行。命令行才是王道,R脚本应该也一样了。打开Linux终端敲一下“ R --help ”发现,R的命令行执行方式也是很简单。借用R自带的“ mtcars ”数据试一下,完全OK!
①直接执行R命令
root@ubuntu:~/r# R -e "with(mtcars, {summary(mpg, disp, wt)})"
R version 3.2.3 (2015-12-10) -- "Wooden Christmas-Tree"
Copyright (C) 2015 The R Foundation for Statistical Computing
Platform: x86_64-pc-linux-gnu (64-bit)
R是自由软件,不带任何担保。
在某些条件下你可以将其自由散布。
用'license()'或'licence()'来看散布的详细条件。
R是个合作计划,有许多人为之做出了贡献.
用'contributors()'来看合作者的详细情况
用'citation()'会告诉你如何在出版物中正确地引用R或R程序包。
用'demo()'来看一些示范程序,用'help()'来阅读在线帮助文件,或
用'help.start()'通过HTML浏览器来看帮助文件。
用'q()'退出R.
> with(mtcars, {summary(mpg, disp, wt)})
Min. 1st Qu. Median Mean 3rd Qu. Max.
10.40 15.42 19.20 20.09 22.80 33.90
即通过“ R -e 'R command' ”的形式。
②执行R脚本
root@ubuntu:~/r# cat terminalR.R
# !/usr/bin/R
with(mtcars, {
info <<- summary(mpg, disp, wt)
jpeg(filename = "mpg_disp.jpeg")
plot(mpg, disp)
png(filename = "mpg_wt.png")
plot(mpg, wt)
dev.off()
})
if (FALSE) {print(info)}
root@ubuntu:~/r# R --no-save < terminalR.R
R version 3.2.3 (2015-12-10) -- "Wooden Christmas-Tree"
Copyright (C) 2015 The R Foundation for Statistical Computing
Platform: x86_64-pc-linux-gnu (64-bit)
R是自由软件,不带任何担保。
在某些条件下你可以将其自由散布。
用'license()'或'licence()'来看散布的详细条件。
R是个合作计划,有许多人为之做出了贡献.
用'contributors()'来看合作者的详细情况
用'citation()'会告诉你如何在出版物中正确地引用R或R程序包。
用'demo()'来看一些示范程序,用'help()'来阅读在线帮助文件,或
用'help.start()'通过HTML浏览器来看帮助文件。
用'q()'退出R.
> # !/usr/bin/R
>
>
> with(mtcars, {
+ info <<- summary(mpg, disp, wt)
+ jpeg(filename = "mpg_disp.jpeg")
+ plot(mpg, disp)
+ png(filename = "mpg_wt.png")
+ plot(mpg, wt)
+ dev.off()
+ })
jpeg
2
>
> if (FALSE) {print(info)}
即通过输入流执行R脚本文件。
③静默执行R脚本
以上命令行执行可以发现,R控制台的输出全部打印出来了,占满了终端窗口,这些打印可能并不是需要的,或者只是需要一个结果文件,写出文件加一个输出流 “ > ”就OK了,而静默执行加参数控制一下就行了。
R --no-save -q < terminalR.R
R --no-save --slave < terminalR.R
④Windows DOS环境
和Linux下的方式差不多,区别是脚本的执行需要借助R安装自带的“Rscript”程序。
# R命令
cd C:\Program Files\R\R-3.4.0\bin
Rscript -e "with(mtcars, {summary(mpg, disp, wt)})"
# R脚本
"C:\Program Files\R\R-3.4.0\bin\R.exe" --no-save --slave < D:\R\terminalR.R