Rscripts的使用,以及如何為R指令碼傳引數

2021-09-07 10:08:55 字數 1462 閱讀 2478

一、在windows下使用rscript:

1.進入cmd.exe下,將當前工作目錄轉到rscript.exe所在目錄下面,然後呼叫rscript  **.r檔案即可。但是所呼叫的.r檔案必須是在r的工作目錄下,也就是和rscript.exe在同乙個資料夾內(rscript預設情況下是不儲存工作空間的)。還可以將這些命令寫成乙個bat檔案,然後將該檔案放置在cmd.exe的工作目錄下,直接在cmd.exe中輸入該bat檔名即可執行。bat檔案中包含了rscript命令。

2.進入cmd.exe下,將當前工作目錄轉到rscript.exe所在目錄下面,直接輸入r的命令,格式為:rscript -e "x<-seq(0,10,2) " -e "x"或者使用格式如rscript -e "a<-c(1,20,2);write(a,file='data.txt');"等來執行(各語句之間用「;」分隔開來)。

需要注意的是:如果執行命令rscript -e "a<-c(1,20,2);write(a,file="data.txt");"(此處均為雙引號)將資料寫入到乙個檔案中,會顯示說找不到物件(指要寫入的檔案),如何解決?

這是因為在命令列下 -e 後面的命令需要用雙引號,所以其中的語句就不能直接用雙引號來表示字串了。可以使用單引號,也可以通過反斜槓號來對雙引號進行轉義來解決(使用單引號和雙引號均可,關鍵是要使得rscript的引號和中間語句的引號區分開來即可)。另一種解決方法是將r命令儲存成.r檔案,然後通過rscript呼叫。

畫圖時,並不直接顯示出來圖形!而是自動轉換成了pdf格式,存在了rscript的目錄下。不管是畫了多少個圖形,都會儲存在乙個pdf檔案中,分頁來顯示,pdf檔案的名字為rplots.pdf。但是可以通過在r 語句中首先通過命令png或者bmp、jpeg首先限定一下圖形檔案的檔名及其型別。如上圖示中的最後一條語句。

二、用rscripts給r指令碼傳遞引數

1.用法

rscript的用法中有個args,這個就是傳遞給.r檔案的引數,在指令碼中呼叫這個引數需要用到commandargs()這個函式。

2.下面舉例說明

rscript xx.r 1 2

將1和2傳遞給xx.r指令碼,而xx.r指令碼中是這樣呼叫的:

args<-commandargs(t) #收集引數給args變數,則args[1]=1,args[2]=2

這樣就可以根據不同的引數執行不同的命令了

#barplot.r

args<-commandargs(t)

x<-read.table(args[1])

png(args[2], width=1024, height=768)

barplot(x$v2, names.arg=x$v1)

dev.off()

執行:rscript barplot.r /rna/shang/human-rna-seq/result/output/chr.junction /rna/shang/human-rna-seq/result/output/chr.juntion.png

Rscripts的使用,以及如何為R指令碼傳引數

一 在windows下使用rscript 1.進入cmd.exe下,將當前工作目錄轉到rscript.exe所在目錄下面,然後呼叫rscript r檔案即可。但是所呼叫的.r檔案必須是在r的工作目錄下,也就是和rscript.exe在同乙個資料夾內 rscript預設情況下是不儲存工作空間的 還可以...

CMFCColorButton的使用以及重繪

cmfccolorbutton是visual studio 2008 sp1版本以上提供的顏色採集器。系統環境 windows 7 程式設計環境 visual studio 2008 sp1 下面介紹下使用步驟 1.新建基於對話方塊的工程,名稱為mycolorbuttondemo 2.拖動乙個按鈕到...

NSSortDescriptor使用以及陣列排序

nssortdescriptor 指定用於物件陣列排序的物件的屬性。物件可能是字典,這種情況就是對字典陣列排序 如果是employee物件需要按照name來排序,就生成下面的descriptor nssortdescriptor descriptor nssortdescriptor sortdes...