Oltre al reindirizzamento, che cattura un'intera sessione, esiste un modo per avviare e interrompere la registrazione durante una sessione R? Per chiarire, sto cercando qualcosa di simile al comando log using
in Stata.Come si registra una sessione R su un file?
risposta
Conoscete lo sink()
nella base R?
Ci sono anche alcuni pacchetti di registrazione su CRAN: logging, log4r e possibilmente di più.
Infine, l'utente di Emacs ha ESS e la sua modalità di trascrizione. È possibile salvare la sessione come un log e, in generale, l'approccio "lavora da file ed esegui dal file" crea un log (parziale, solo per i comandi) mentre lavori.
sink() era esattamente quello che stavo cercando, ma chiamato completamente intuitivamente. Come ho detto nel mio commento, so che questo è stupido. Grazie! –
C'è savehistory(file)
che scriverà l'intera cronologia come testo in chiaro oppure, se si sta tentando di registrare l'output, utilizzare sink(file, split = TRUE)
.
Oltre alla funzione sink
si potrebbe anche guardare ai txtStart
e le relative funzioni nel pacchetto TeachingDemos
o la funzionalità simile nel pacchetto R2HTML
(che è venuto prima).
Per il bene di completare la risposta utilizzando lavandino
# copy the log to a text file
sink("./logofcode.txt")
Your R code(s) goes here
you can use a stored R code as well using source()
source("./XS_SPEC_CF.R",echo=T, max.deparse.length=1e3)
sink()
Da quando ho bisogno di fare questo molto spesso, mi sono convertito approccio di usct01 in una piccola funzione: 'source_with_log <- la funzione (r_script, log_file) { lavandino (file = log_file) fonte (r_script, eco = TRUE) lavandino() } ' –
Penso anche che questa è la domanda più stupida mai pubblicato, ma non c'è un tag "dumb-domanda". –