首页 > 代码库 > 如何在cluster上跑R脚本

如何在cluster上跑R脚本

R 是一个比较不错但是有时候操蛋的语言,不错是因为用着爽的时候真的很爽,操蛋是因为这种爽不是什么时候都可以的,比如说在cluster上批处理跑R脚本。

当然说这话有些在上面跑过的各种不服气,你丫傻逼吧这么简单都不会,呵呵,别急,我今天就是来看看怎么在cluster上提交R脚本的。

 

R有几种命令行处理模式,典型的是

R COMMAND BATCH "--args arg1 arg2.." *.r *.out

R --vanilla --args arg1 arg2 ... <*.r >*.out

Rscript *.r arg1 arg2 ...

 

当然,在结点上用第一个很操蛋,因为你的bash脚本不太好处理“" 内的问题,第二个比较容易,估计很多人用的是这个,今天讲讲第三个怎么用:

首先,我们这里假设有个R脚本叫hi.r

在第一行加上

#!/usr/bin/Rscript

熟悉脚本语言的都知道,这是告诉解释器你丫在这里面找可执行文件

接着

chmod +x *.r

把该脚本变成一个可执行文件

然后用这个命令提交

qsub -b y *.r arg1 arg2...

有人问-b是啥,这个是必须的,告诉qsub 你丫要执行一个可执行的文件,所以y 是yes的意思

好了到此为止~

如何在cluster上跑R脚本