2013-04-11 41 views
4

我總是以我的腳本:如何將R設置爲默認選項?

rm(list=ls()) 

清除我的工作區,以避免不同腳本之間的衝突。不過,我正在尋找一種將所有更改的選項設置爲默認狀態的方法。例如,在一些腳本,我需要通過設置來改變SS類型:

options(contrasts=c(unordered="contr.sum", ordered="contr.poly")) 

在其他腳本,我需要使用默認選項(並且由於它是默認的,我不直接指定它)是:

options(contrasts=c(unordered="contr.treatment", ordered="contr.poly")) 

但是,如果之前剛剛使用了更改了選項的腳本,該選項顯然會在沒有我注意的情況下更改。

是否有一個命令可以放在我的腳本之上,將R重置爲默認選項?

+0

是的,類似於'op < - options(...);你的東西在這裏;選項(OP)'。 – chl 2013-04-11 10:56:20

回答

10

就像@chl說的那樣,您可以將您的默認選項保存在某個地方。在Rdata文件中使用save

default_options = options() 
save(default_options, file = "default_options.rda") 

現在你可以加載從文件中這些默認值,並將其應用:

load("default_options.rda") 
options(default_options) 

不過,我會建議對運行v腳本順序。相反,如果您在腳本之間共享功能,只需創建捕獲該功能的功能即可。您工作的腳本始終是獨立的,不受其他以前運行的腳本的影響。您設置的任何選項對於該腳本都是本地的,並且不需要清空工作空間或將選項設置爲默認。

請注意,我也永遠不會保存我的工作環境,我總是使用轉換原始數據的原始數據和腳本來重建我的環境。如果有些部分花費很多時間,我將它們放在一個單獨的腳本中,最後使用save保存Rdata文件。然後我使用load將它們加載到主腳本中。