r语言 - 有没有办法将调试器模式下的变量保存到全局环境中



我正在使用browser()函数来调试我的代码。我想将所有变量保存到全局环境中,以便在退出调试模式时它们将可用。

我知道如何为单个变量执行此操作。 例如,如果我想保存df

df <<- df

有没有办法保存所有变量?

您可以使用 *apply()ls()assign() 的组合。在一个新的 R 会话中,我创建了以下函数:

f <- function() {
    x <- 1
    y <- 2
    z <- 3
    return(x + y + z)
}
ls()
# [1] "f"

然后,我使用 debug() 运行f(),并在 return() 语句之前,从控制台执行了以下内容:

lapply(ls(), function(o) assign(x = o, value = get(o), envir = .GlobalEnv))

然后,在函数执行结束后,检查我的全局环境:

ls()
# [1] "f" "x" "y" "z"

最新更新