2011-08-18 13 views

risposta

3

Ora è possibile salvare le informazioni di sessione R in un file e caricarle in un'altra sessione.

Installare prima il "sessione" pacchetto:

install.packages('session') 

caricare le librerie ei vostri dati, quindi salvare lo stato della sessione in un file:

library(session) 
library(ggplot2) # plotting 

test <- 100 

save.session(file='test.Rda') 

Quindi è possibile caricare lo stato della sessione in un'altra sessione:

library(session) 

restore.session(file='test.Rda') 

#ggplot2 (and associated data) should have loaded with the session data 
head(diamonds) 
ggplot(data = diamonds, aes(x = carat)) + 
    geom_histogram() 

print(test) 

Riferimento: https://www.rdocumentation.org/packages/session/versions/1.0.3/topics/save.session

5

Per quanto ne so, no. L'area di lavoro è per gli oggetti come dati e funzioni. L'avvio di R con pacchetti particolari caricati è ciò che è per il tuo file .Rprofile e puoi averne uno diverso in ogni directory.

Si potrebbe, suppongo, salvare una funzione nell'area di lavoro che carica i pacchetti che si desidera, e quindi eseguire tale funzione quando si inizia R.

2

Joran è giusto, ma voglio parlare di una tecnica che , anche se ingombrante, potrebbe essere utile.

È possibile utilizzare un programma di checkpoint come DMTCP per salvare l'intero processo R e riavviarlo in un secondo momento.

3

Si consiglia di non salvare nulla tra sessioni r e invece di ricrearlo utilizzando il codice. Questo è molto più probabile che porti a risultati riproducibili.

+2

Vero, e cerco sempre di inserire tutto in codice che può essere eseguito direttamente quando ho finito, è solo che diventa lento eseguire ripetutamente script sempre più lunghi. – Owen

+1

Attenti anche all'ordine in cui includi i pacchetti, poiché gli oggetti da uno possono ombreggiare un altro. – smci

Problemi correlati