¿Hay alguna herramienta o IDE para depurar paquetes R y ejecutarlos paso a paso?

Estoy interesado en algunos paquetes R y quiero entender cómo funciona, ¿hay alguna herramienta para ejecutar el método en el paquete paso a paso e imprimir la salida intermedia?

preguntado el 03 de mayo de 12 a las 14:05

¿Quieres decir 'depurar ()'??? ;-)-

4 Respuestas

Las dos respuestas anteriores ya le dijeron qué pueden hacer la base R y los paquetes complementarios.

En lo que respecta a los IDE, tiene dos opciones:

  1. La Complemento StatET para Eclipse tiene algunas características para esto (que no he usado).

  2. ESS para Emacs donde se han integrado las últimas versiones de ESS ess-tracebug que hace esto también. Aquí hay algunos documentación de cuando ess-tracebug todavía era un proyecto de terceros y no parte de ESS adecuado. Si bien soy un usuario de ESS, tampoco lo he probado todavía.

Aquí está la ayuda de ess-tracebug para dar una idea de lo que puede hacer:

Documentation:

Default ess-tracebug key bindings:

* Breakpoints:

 b   . Set BP (repeat to cycle BP type) . `ess-bp-set'
 B   . Set conditional BP               . `ess-bp-set-conditional'
 k   . Kill BP                          . `ess-bp-kil'
 K   . Kill all BPs                     . `ess-bp-kill-all'
 t   . Toggle BP state                  . `ess-bp-toggle-state'
 l   . Set logger BP                    . `ess-bp-set-logger'
 C-n . Goto next BP                     . `ess-bp-next'
 C-p . Goto previous BP                 . `ess-bp-previous'

* General Debugging:

 `   . Show R Traceback                     . `ess-show-R-traceback'
 e   . Toggle error action (repeat to cycle). `ess-dbg-toggle-error-action'
 d   . Flag for debugging                   . `ess-dbg-flag-for-debugging'
 u   . Unflag for debugging                 . `ess-dbg-unflag-for-debugging'
 w   . Watch window                         . `ess-watch'

* Navigation to errors (emacs general functionality):

 C-x `, M-g n   . `next-error'
 M-g p          . `previous-error'

* Interactive Debugging:

 c   . Continue                  . `ess-dbg-command-c'
 n   . Next step                 . `ess-dbg-command-n'
 p   . Previous step             . `previous-error'
 q   . Quit debugging            . `ess-dbg-command-Q'
 1..9. Enter recover frame       . `ess-dbg-command-digit'
 0   . Exit recover (also q,n,c) . `ess-dbg-command-digit'

* Input Ring:

 i   . Goto input event marker forwards     . `ess-dbg-goto-input-event-marker'
 I   . Goto input event marker backwards    . `ess-dbg-goto-input-event-marker'

* Misc:
 s   . Source current file  . `ess-tracebug-source-current-file'
 ?   . Show this help       . `ess-tracebug-show-help'

contestado el 03 de mayo de 12 a las 15:05

Creo que las instrucciones R debug y browser te dejará hacer lo que quieras.

contestado el 03 de mayo de 12 a las 15:05

Existe el paquete de depuración, combinado con la función mtrace. También hay un nuevo módulo de depuración para Eclipse (como menciona Dirk en su respuesta), y se podrían agregar capacidades similares a Rstudio en el futuro. Una vez que estén en su lugar, la pregunta sería cómo hacer que depuren las funciones relevantes. Lo que básicamente significaría obtener la lista de todas las funciones que le interesan y realizar un seguimiento de ellas.

pd: puede que le eches un vistazo a esto - http://www.r-bloggers.com/what-does-this-package-look-like/

contestado el 04 de mayo de 12 a las 08:05

El IDE en Revolution R incluye prácticas funciones de depuración visual similares a las que se encuentran en MS Visual Studio. Aunque el software es propietario y requiere el pago de la licencia, siempre puede descargar la versión académica gratuita.

http://www.revolutionanalytics.com/downloads/free-academic.php

Respondido 24 Oct 12, 17:10

No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas or haz tu propia pregunta.