browser() 中的 RStudio "next line" 命令不起作用
RStudio "next line" command in browser() does not work
我想,您可以使用 RStudio 中的 browser() 命令单步执行代码中的行。在许多情况下,这是可行的。但是,在 R 脚本中它似乎不起作用。这是一个最小的例子(只需在 test.R 中复制以下代码):
print("1")
browser()
print("2")
wrong # Produces error, which can not be tracked using browser
print("3")
(R-3.3.0, RStudio 0.99.489).
感谢您的帮助!
感谢@Batanichek,以下脚本解决了问题:
{
print("1")
browser()
print("2")
wrong
print("3")
}
如果我没看错的话
您可以将所有脚本传递到 {}
喜欢
{
+ print("1")
+ browser()
+ print("2")
+ wrong # Produces error, which can not be tracked using browser
+ print("3")
+ }
[1] "1"
Called from: top level
Browse[1]> n
debug at #4: print("2")
Browse[1]> n
[1] "2"
debug at #5: wrong
Browse[1]> n
Error: object 'wrong' not found
然后run
会停在browser()
或者如果来源
source('~/.active-rstudio-document')
[1] "1"
Called from: eval(expr, envir, enclos)
Browse[1]> n
debug at ~/.active-rstudio-document#4: print("2")
Browse[2]> n
[1] "2"
debug at ~/.active-rstudio-document#5: wrong
Browse[2]> n
Error in eval(expr, envir, enclos) : object 'wrong' not found
我想,您可以使用 RStudio 中的 browser() 命令单步执行代码中的行。在许多情况下,这是可行的。但是,在 R 脚本中它似乎不起作用。这是一个最小的例子(只需在 test.R 中复制以下代码):
print("1")
browser()
print("2")
wrong # Produces error, which can not be tracked using browser
print("3")
(R-3.3.0, RStudio 0.99.489).
感谢您的帮助!
感谢@Batanichek,以下脚本解决了问题:
{
print("1")
browser()
print("2")
wrong
print("3")
}
如果我没看错的话
您可以将所有脚本传递到 {}
喜欢
{
+ print("1")
+ browser()
+ print("2")
+ wrong # Produces error, which can not be tracked using browser
+ print("3")
+ }
[1] "1"
Called from: top level
Browse[1]> n
debug at #4: print("2")
Browse[1]> n
[1] "2"
debug at #5: wrong
Browse[1]> n
Error: object 'wrong' not found
然后run
会停在browser()
或者如果来源
source('~/.active-rstudio-document')
[1] "1"
Called from: eval(expr, envir, enclos)
Browse[1]> n
debug at ~/.active-rstudio-document#4: print("2")
Browse[2]> n
[1] "2"
debug at ~/.active-rstudio-document#5: wrong
Browse[2]> n
Error in eval(expr, envir, enclos) : object 'wrong' not found