2013-01-09 29 views
10

打開項目我每次重新啓動時自動加載包RStudio,它要求我重新加載所有加載在工作區中,以前的軟件包。我似乎無法弄清楚問題所在,RStudio在關閉它們時保存了項目。如何RStudio

我怎樣才能確保RStudio重新加載必要的程序包,當我打開項目?

+3

重新安裝?或重新加載? – GSee

+0

您需要向我們提供至少有關您使用哪個版本的RStudio以及哪個版本的R耦合到它的基本信息。但是... –

+1

@Gsee說,但我會你的意思是'install.packages()'或'library()'或'require()'? – Andrie

回答

18

我認爲你想說你必須重新加載所有先前加載到工作區中的軟件包。這不是一個錯誤,這是設計。

如果您想要在項目啓動時加載一些軟件包,您可以在項目目錄中創建一個名爲.Rprofile的文件,然後指定您希望在加載項目時運行RStudio的任何代碼。

例如:

cat("Welcome to this project.\n") 
require(ggplot2) 
require(zoo) 

將在控制檯打印一個值得歡迎的消息,並加載每次打開項目時ggplot2zoo

http://www.rstudio.com/ide/docs/using/projects

+1

如果喬里斯的假設是正確的,那麼這個問題將會是這樣的一個重複:http://stackoverflow.com/questions/10300769/how-to-load-packages-in-r-automatically/14708285#14708285。然而,它出現在這個問題之前,如果你谷歌「自動打開包r」。 – Mikko

+2

@Largh不完全重複。注意在討論RStudio中的項目時,必須保存'.Rprofile'文件與啓動時R中加載的區別。雖然這兩種方法背後的機制是相同的,但在這種情況下,保存文件的地方確實很重要。 –

+1

我得到了稍微不同的行爲 - 我必須在.Rprofile中包含「require」和「library」命令才能自動加載包。我不明白這是爲什麼 - 文檔表明這兩種方法都應該足夠,但我仔細檢查過,我需要調用兩者才能訪問這些方法。我正在使用R 3.0.3和RStudio 0.98。該包是seqinr,如果有關係。從控制檯工作時,任何一個命令都可以工作。奇怪的。 –

1

一般看到有什麼不同默認在RStudio封裝加載比R(How to load packages in R automatically?)。在啓動時,R在您本地或故障中檢查.Rprofile文件,該文件位於主目錄或安裝目錄(在Mac/Linux上:./.Rprofile或其他~/.Rprofile)並執行它,並因此執行任何options(defaultPackages...))或其他與打包負載相關的命令它包含。

唯一的小區別是RStudio「有益」啓動see "RStudio: Working with Projects"之前改變你的默認路徑,所以你可能會加載不同的或丟失.Rprofile或錯誤.Rprofile,這取決於你是否已經打開的RStudio項目或只是純文件,以及您的RStudio默認工作目錄設置爲。目前你並不清楚你的目錄是什麼,所以有時這會導致真正的悲傷。

我傾向於使用RStudio沒有定義我的代碼作爲RStudio項目,只是因爲這是嚴厲的,沒有添加任何創造更多的文件和目錄(我的使用情況,反正)。 所以我發現維護.Rprofile,並確保正確的被加載是從項目目錄到一個可靠的舊的Unix鏈接的解決方案我〜

ln -s ~/.Rprofile ./.Rprofile 

(如果你在Windows上它更痛苦)

你不需要有一個全局的.Rprofile,你可以爲不同類型的項目,或者樹,或者說(比如說).Rprofile.nlp,.Rprofile.financial,。 Rprofile.bio等。除了options(default.packages,你可以收集所有的主題相關的設置:scipen,寬度,data.table /特定dplyr選項,搜索路徑...

電量提示:

  • 明顯保留備份或SCM您的寶貴.Rprofile(S))的
  • 如果你有多個.Rprofiles
  • ,把一隻貓(「裝.Rprofile。富「)中的每一個,所以你可以從右邊一個得到每個項目後裝
  • 控制檯中看到線,修改,修剪,調整你的.Rprofile;增加新的使用情況下的東西,註釋掉不相關的東西