您的位置:首頁>科技>正文

讓你的腳本一鍵運行

感謝關注天善智慧, 走好資料之路↑↑↑

歡迎關注天善智慧, 我們是專注于商業智慧BI, 大資料, 資料分析領域的垂直社區, 學習, 問答、求職一站式搞定!

你平時都是怎麼運行你的R腳本的呢?是打開R還是打開Rstudio再運行你的R腳本的呢?你不覺得這樣很麻煩嗎?今天就給你教一招, 簡單方便, 也不用修改環境變數, 讓你的腳本像啟動程式一樣, 點一下就自動執行了。

首先我們新建一個記事本, 寫入下面代碼。 寫完之後保存, 將記事本的尾碼.txt改成.bat保存。

一. 使用R.exe程式運行你的腳本

(1)當腳本與bat檔不在同一個資料夾

"D:Program FilesRR-3.3.2inR.exe" CMD BATCH "C:Usershenry wangDesktop ext.R" text.txt

pause

如果bat檔是這樣寫的,

那就要求我們的腳本程式必須和bat檔在同一個資料夾裡面, 否則就會報錯。 如果不在一個資料夾的話, 那也沒關係, 咱們繼續往下看。

(2)當腳本與bat文件在同一個資料夾

"D:Program FilesRR-3.3.2inR.exe" CMD BATCH text.R text.txt

pause

其中"D:Program FilesRR-3.3.2inR.exe"為R.exe的目錄, 後面再加上CMD BATCH, 最後"C:Usershenry wangDesktop ext.R"為我們要執行的程式, 我的指令檔在桌面上放著。 如果我們的.bat檔和腳本程式在一個資料夾時, 這裡可以直接寫成text.R, 不用寫檔目錄。

其實text.txt是可寫可不寫, 如果不寫的話, 默認會生成一個 程式名.Rout 的檔, 裡面保存的是程式碼, 不過最後會調用proc.time()函數。 這種檔可以用穀歌流覽器, 其他流覽器我沒有試, 具體就不知道了, notepad++也是可以打開的。 當然你也可以像我一樣設置生成text.txt。 除此之外, 它也會生成一個.Rdata檔, 保存的是程式運行中變數的值,

如果想要查看的話可以在Rstudio中使用load()函數載入查看。

bat檔的最後一行代碼pause也是可寫可不寫的, 如果寫的話, 運行完之後那個黑框框不會自動關閉, 如果不寫的話, 運行完之後自動關閉。 寫上有什麼好處, 如果有錯誤的話就會顯示, 不寫的話就算有錯誤, 顯示一下立馬關了, 啥也看不到, 因此寫上還是比較好的。

二. 使用Rscript程式運行你的腳本

(1)當腳本與bat檔不在同一個資料夾

"D:Program FilesRR-3.3.2indRscript.exe" "C:Usershenry wangDesktop ext.R"

pause

(2)當腳本與bat文件在同一個資料夾

"D:Program FilesRR-3.3.2indRscript.exe" text.R

pause

使用Rscript.exe時, bat文件裡面不用寫CMD BATCH。

首先"D:Program FilesRR-3.3.2indRscript.exe"指的就是Rscript.exe程式, 然後"C:Usershenry wangDesktop ext.R"指的就是我們腳本text.R。 如果我們的.bat檔和腳本程式在一個資料夾時, 這裡可以直接寫成text.R, 不用寫檔目錄。 它倆中間有一個空格。

這運行完之後, 如果有繪圖的畫, 他就會把圖片保存在一個PDF文檔中,

然後沒有其他檔生成。

現在我們對這兩個簡單的進行一個比較。

在使用Rscript.exe軟體在運行之後會把圖片結果列印在一個PDF檔中,然後沒有其他檔生成。

在使用R.exe軟體, 它會把中間變數的值保存在一個.Rdata檔中, 程式預設會保存在一個.Rout檔中, 你也可以指定為其他檔案類型, 比如我開始設置保存在一個txt檔中。

給大家演示一下我的bat檔執行成果, 腳本寫的簡單, 就為證明這是一個可行的方法。

使用R.exe

因此大家可以根據自己的需要來指定一個軟體去運行自己的腳本。

—————————

轉載請保留以下內容:

本文作者:天善智慧社區 王亨

原文連結:https://ask.hellobi.com/blog/learn_R/9150

Next Article
喜欢就按个赞吧!!!
点击关闭提示