8 votos

Ejecutar un R script línea por línea

Acabo de descubrir cómo ejecutar un R script desde la consola de R en Windows.

source("arrrFile.R")

El problema es que este comando se ejecuta "silenciosamente". ¿Cómo puedo ejecutar el archivo comando por comando como lo escribiría en la consola?

10voto

Mike Moore Puntos 641

Abra el archivo script dentro de su RGui y pulse Ctrl+R para ejecutar línea por línea (aunque hay que pulsar muchas veces;)). Sin embargo, yo recomendaría utilizar RStudio para el trabajo conveniente con R. En este caso se ejecuta línea por Ctrl+Enter . O puede modificar su script para print() (o cat() ) los objetos.

4voto

ESRogs Puntos 1381

Puede utilizar el depurador incorporado de R; debe ser activado en una función, por lo que se necesita una pequeña envoltura:

sourceDebugging<-function(f){
 #Function to inject the code to
 theCode<-function(){}
 #Injection
 parse(text=c('{',readLines(f),'}'))->body(theCode)
 #Triggering debug
 debug(theCode)
 #Lift-off
 theCode()
}
sourceDebugging(<file with code>)

Esto es bastante útil para la depuración (le da la oportunidad de inspeccionar el estado después de cada línea), sin embargo, sólo se evaluará en un entorno fresco de theCode en lugar de source por defecto .GlobalEnv ... esto significa, por ejemplo, que las variables realizadas dentro desaparecerán a menos que se globalicen explícitamente.

La segunda opción es simplemente emular la escritura desde el teclado y pulsar ENTER... pero como ha señalado caracal esto se puede conseguir simplemente source(<file with code>,echo=TRUE) .

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X