Как отредактировать и отладить источники библиотеки R

Я включал библиотеку, названную промокательной бумагой в моем сценарии R, который имеет ошибку в ней. Существует ли простой способ ко мне отредактировать источник, чтобы попытаться отладить проблему?

18
задан Ricardo Oliveros-Ramos 2 January 2014 в 19:12
поделиться

3 ответа

Найдите функции trace и browser, это основные инструменты в R для отладки. Скажем, вы хотите отредактировать исходный текст функции foo, тогда произнесение

trace("foo",edit=TRUE)

откроет исходный текст foo в редакторе для внесения изменений. Однако это предназначено для интерактивной отладки; исходные файлы в пакетах не изменяются. Поэтому после того, как вы нашли ошибку, вам нужно изменить исходные файлы пакета, чтобы изменения были постоянными.

22
ответ дан 30 November 2019 в 07:28
поделиться

Ваш вопрос о Есть ли для меня простой способ отредактировать исходный код, чтобы попытаться отладить проблему? У есть очевидный ответ: используйте исходный код, Люк!

blotter - это пакет на R-Forge , откуда вы можете получить исходники blotter здесь . Это стандартный способ взглянуть на Open Source и, возможно, помочь ему с исправлением ошибок.

3
ответ дан 30 November 2019 в 07:28
поделиться

Такая возможность реализована в разрабатываемой версии R (Jul 16, 2010):

В r-devel добавлена новая возможность для экспериментов авторов пакетов. пакетов.

Идея заключается в том, чтобы вставить измененный код из исходного текста пакета в работающий пакет без переустановки. Таким образом, можно изменять, тестировать, изменять, и т.д. в быстром цикле.

Механизм заключается в оценке некоторых файлов исходного кода, возвращающих объект окружения, который является снимком кода. Из этого среды, функции и методы могут быть вставлены в среду пакета в текущей сессии. При вставке используется механизм trace() механизм, поэтому исходный код может быть восстановлен.

Одношаговая версия выглядит так:

insertSource("mySourceFile.R", package = "myPackage", functions = "foo")

Более подробную информацию смотрите в этом посте: Вставка и тестирование пересмотренных функций в пакете

11
ответ дан 30 November 2019 в 07:28
поделиться
Другие вопросы по тегам:

Похожие вопросы: