调试了 R 中的标准函数,例如 substr,我不感兴趣



我有一个大的R程序,在一个函数中间的某个地方,我放了一个browser()来调试相同的程序。但是,这种调试很痛苦,因为即使是标准的 R 函数,如substrregexprnchar都在调试,但我对此不感兴趣。请建议如何停止此操作并仅调试我在函数中编写的内容,而不是标准 R 函数。

假设你有一个字符串

S = "ABCD,12345"

我想要结果 12345,它是字符","之后的 S 子字符串。 我使用以下命令:

substr(S, regexpr(",", S) + 1, nchar(S))

命令是正确的,并且做得很好。但是哪个调试,主要功能,这个substrregexprnchar也得到了调试,这对我来说是浪费时间。

似乎您正在单步执行每个函数,通常是通过使用 s 命令。在调试模式下使用 n 命令应该运行每个嵌套函数,而无需单步执行该函数。请注意,如果使用 s 一次,则每个运行命令(通常只需单击 enter(将使用 s,直到使用另一个命令。

R 还有一些更复杂的调试工具。在 Hadley 的免费在线书籍 Advanced R 中,有一章是关于 R 调试的(第 22 章(。有关在 R 中进行调试的更深入知识,我强烈推荐本章。

相关内容

最新更新