【发布时间】:2015-01-20 00:40:59
【问题描述】:
我正在尝试清除我的 R 工作区。我在任何线程中发现的任何内容似乎都不起作用 - 我已经搜索并尝试了几个小时的解决方案:(
当我打开 R 并输入 ls 时,控制台会显示上一个会话的所有代码:
function (name, pos = -1L, envir = as.environment(pos), all.names = FALSE,
pattern)
{
if (!missing(name)) {
nameValue <- try(name, silent = TRUE)
if (identical(class(nameValue), "try-error")) {
name <- substitute(name)
if (!is.character(name))
name <- deparse(name)
warning(gettextf("%s converted to character string",
sQuote(name)), domain = NA)
pos <- name
}
else pos <- nameValue
}
all.names <- .Internal(ls(envir, all.names))
if (!missing(pattern)) {
if ((ll <- length(grep("[", pattern, fixed = TRUE))) &&
ll != length(grep("]", pattern, fixed = TRUE))) {
if (pattern == "[") {
pattern <- "\\["
warning("replaced regular expression pattern '[' by '\\\\['")
}
else if (length(grep("[^\\\\]\\[<-", pattern))) {
pattern <- sub("\\[<-", "\\\\\\[<-", pattern)
warning("replaced '[<-' by '\\\\[<-' in regular expression pattern")
}
}
grep(pattern, all.names, value = TRUE)
}
else all.names
}
<bytecode: 0x2974f38>
<environment: namespace:base>
如果我输入 rm(list=ls()),然后再次输入 ls,我会得到完全相同的响应 - 即,之前会话中的代码没有被删除。
顺便说一句,我输入的是ls 没有括号。使用括号键入 ls() 将返回 character(0)。
我也尝试通过 RStudio 清除环境,甚至删除 ~/.Rdata 文件。什么都不会清除此工作区。每次我重新启动R并输入ls,所有旧代码仍然存在。
我已经尝试过this thread 中的提示,但它们对我不起作用。
知道为什么会发生这种情况吗?谢谢!
【问题讨论】:
-
不太清楚您要做什么。
rm(list=ls())删除全局环境中的所有对象。你说的代码还在是什么意思?如果可以,请举个例子 -
您输入的是
ls()来列出对象,而不是ls(没有()),对吗? -
说到代码,是指历史上你运行过的代码命令吗?
-
@MatthewLundberg,我正在输入
ls没有括号。用括号键入ls()将返回character(0) -
也许你已经用别的东西替换了标准的 R
ls-function。现在输入rm(ls)。
标签: r