2013-12-14 147 views
0

如果你有一块R代码,命令和函数的组合,并且你想要逐行调试代码,并且需要经过内部过程,R在它吐出之前正在执行出错信息,可以使用哪些命令? trace()debug()似乎只是为了功能。我正在尝试运行我的整个脚本,并逐行列出项目,R在内部沿着每条命令行进行操作。R调试代码

我研究了过去的档案,我发现这一点: Debug Tools in R - stepping through code 但可惜没有解决问题

+1

我不是专家,但[RStudio](http://www.rstudio.com/ide/docs/debugging/overview)可能是你的东西。 – Frithjof

+0

嗨Frith。我正在使用R工作室。它仍然需要调试。 – jessica

+0

你想要发生什么?逐行运行代码(除非你正在寻找内部函数,否则不需要调试)似乎会给你想要的,然后使用'traceback'来找出错误来自哪里。 – Thomas

回答

1

尝试browser功能。按'n'按钮继续。

1

我会鼓励在集成开发环境(IDE)中执行此操作,而不是在代码中执行此操作。使用IDE可以让您的代码干净简单。

我使用名为“RStudio”(http://www.rstudio.com)的IDE,它可用于Windows,Mac和Linux,使用起来非常简单。

Rstudio的新版本有能力在脚本和函数中添加断点:要做到这一点,只需点击文件的左边缘来添加断点。你可以设置一个断点,然后从这一点开始。您还可以访问该环境中的所有数据,因此您可以尝试命令。详细请参照http://www.rstudio.com/ide/docs/debugging/overview。如果你已经安装了Rstudio,你可能需要升级 - 这是一个相对较新的(2013年末)功能。

您可能还会发现其他具有类似功能的IDE。

0

在Rstudio中,如果按下Ctrl + R而没有任何突出显示的文字,将会在您的光标所在的同一行上运行任何代码。然后你的光标会自动前进到下一行。您可以继续按Ctrl + R来逐行运行您的代码。

不知道你还想要什么。在每行末尾添加; print(whatever)总是一个选项,但它很乏味。