Saltar al contenido

¿Cómo guardar toda la salida de la consola en un archivo en R?

Luego de mirar en diferentes repositorios y sitios al final encontramos la resolución que te enseñaremos a continuación.

Solución:

Tienes que hundir “salida” y “mensaje” por separado (el sink función solo mira el primero elemento de type)

Ahora si quieres el aporte para ser registrado también, luego póngalo en un script:

script.R

1:5 + 1:3   # prints and gives a warning
stop("foo") # an error

Y en el mensaje:

con <- file("test.log")
sink(con, append=TRUE)
sink(con, append=TRUE, type="message")

# This will echo all input and not truncate 150+ character lines...
source("script.R", echo=TRUE, max.deparse.length=10000)

# Restore output to console
sink() 
sink(type="message")

# And look at the log...
cat(readLines("test.log"), sep="n")

Si tiene acceso a una línea de comando, es posible que prefiera ejecutar su script desde la línea de comando con R CMD BATCH.

== comenzar el contenido del script.R ==

a <- "a"
a
How come I do not see this in log

== contenido final del script.R ==

En el símbolo del sistema ("$" en muchas variantes un * x, "C:>" en Windows), ejecute

$ R CMD BATCH script.R &

El "&" final es opcional y ejecuta el comando en segundo plano. El nombre predeterminado del archivo de registro tiene "out" agregado a la extensión, es decir, script.

== comenzar el contenido del script.Rout ==

R version 3.1.0 (2014-04-10) -- "Spring Dance"
Copyright (C) 2014 The R Foundation for Statistical Computing
Platform: i686-pc-linux-gnu (32-bit)

R is free software and comes with ABSOLUTELY NO WARRANTY.
You are welcome to redistribute it under certain conditions.
Type 'license()' or 'licence()' for distribution details.

  Natural language support but running in an English locale

R is a collaborative project with many contributors.
Type 'contributors()' for more information and
'citation()' on how to cite R or R packages in publications.

Type 'demo()' for some demos, 'help()' for on-line help, or
'help.start()' for an HTML browser interface to help.
Type 'q()' to quit R.

[Previously saved workspace restored]

> a <- "a"
> a
[1] "a"
> How come I do not see this in log
Error: unexpected symbol in "How come"
Execution halted

== contenido final del script.Rout ==

No puedes. Como máximo, puede guardar la salida con sink y entrada con savehistory por separado. O use una herramienta externa como script, screen o tmux.

Tienes la opción de añadir valor a nuestra información colaborando tu veteranía en las críticas.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *