如何从R中的工作空间中删除除一个对象以外的所有对象?

如何解决如何从R中的工作空间中删除除一个对象以外的所有对象?

| 我的工作区中有很多对象,但我想删除所有对象。理想情况下,我希望避免键入“ 0”。是否可以表示
remove all objects but these ones
?     

解决方法

        这是一个简单的构造,可以通过使用
setdiff
来完成:
rm(list=setdiff(ls(),\"x\"))
还有一个完整的例子。运行此命令需您自担风险-它将删除除variables4ѭ以外的所有变量:
x <- 1
y <- 2
z <- 3
ls()
[1] \"x\" \"y\" \"z\"

rm(list=setdiff(ls(),\"x\"))

ls()
[1] \"x\"
    ,        使用
gdata
包中的
keep
函数非常方便。
> ls()
[1] \"a\" \"b\" \"c\"

library(gdata)
> keep(a) #shows you which variables will be removed
[1] \"b\" \"c\"
> keep(a,sure = TRUE) # setting sure to TRUE removes variables b and c
> ls()
[1] \"a\"
    ,        我认为另一个选择是在RStudio中打开工作区,然后将列表更改为环境右上角的网格(下图)。然后勾选要清除的对象,最后单击清除。     ,        我只花了几个小时寻找一个类似但略有不同的问题的答案-我需要能够删除R中除少数向量外的所有对象(包括函数)。 一种方法是:
rm(list=ls()[! ls() %in% c(\"a\",\"c\")])
我要保留的向量分别命名为\'a \'和\'c \'。 希望这对任何寻求相同解决方案的人有所帮助!     ,        要保留名称与模式匹配的所有对象,可以使用
grep
,如下所示:
to.remove <- ls()
to.remove <- c(to.remove[!grepl(\"^obj\",to.remove)],\"to.remove\")
rm(list=to.remove)
    ,        将“ 12”替换为要保留的对象的名称
rm(list=(ls()[ls()!=\"v\"]))
帽子提示:http://r.789695.n4.nabble.com/Removing-objects-and-clearing-memory-tp3445763p3445865.html     ,        如果您有很多对象具有不想保留的相同模式,这将利用
ls()
\的
pattern
选项的优势:
> foo1 <- \"junk\"; foo2 <- \"rubbish\"; foo3 <- \"trash\"; x <- \"gold\"  
> ls()
[1] \"foo1\" \"foo2\" \"foo3\" \"x\"   
> # Let\'s check first what we want to remove
> ls(pattern = \"foo\")
[1] \"foo1\" \"foo2\" \"foo3\"
> rm(list = ls(pattern = \"foo\"))
> ls()
[1] \"x\"
    ,        
require(gdata)
keep(object_1,...,object_n,sure=TRUE)
ls()
    ,        让我们以不同的方式思考,如果我们想删除一个组怎么办? 尝试这个,
 rm(list=ls()[grep(\"xxx\",ls())]) 
我个人不喜欢屏幕上的太多表和变量,但我无法避免使用它们。因此,我以\“ xxx \”开头的临时名称命名,以便在不再使用后将其删除。     ,        从一个函数中,rm .GlobalEnv中的所有对象(该函数除外)
initialize <- function(country.name) {

  if (length(setdiff(ls(pos = .GlobalEnv),\"initialize\")) > 0) {
    rm(list=setdiff(ls(pos = .GlobalEnv),\"initialize\"),pos = .GlobalEnv)
  }

}
    ,        这个怎么样?
# Removes all objects except the specified & the function itself.

rme <- function(except=NULL){
  except = ifelse(is.character(except),except,deparse(substitute(except)))
  rm(list=setdiff(ls(envir=.GlobalEnv),c(except,\"rme\")),envir=.GlobalEnv)
}
    ,        假设您要从环境中删除除df外的所有对象:
rm(list = ls(pattern=\"[^df]\"))
    ,        
# remove all objects but selected
rm(list = ls()[which(\"key_function\" != ls())])
    ,        要保留文件列表,可以使用:
rm(list=setdiff(ls(),c(\"df1\",\"df2\")))
    ,        以下将从控制台中删除所有对象
rm(list = ls())
    

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其他元素将获得点击?
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。)
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbcDriver发生异常。为什么?
这是用Java进行XML解析的最佳库。
Java的PriorityQueue的内置迭代器不会以任何特定顺序遍历数据结构。为什么?
如何在Java中聆听按键时移动图像。
Java“Program to an interface”。这是什么意思?
Java在半透明框架/面板/组件上重新绘画。
Java“ Class.forName()”和“ Class.forName()。newInstance()”之间有什么区别?
在此环境中不提供编译器。也许是在JRE而不是JDK上运行?
Java用相同的方法在一个类中实现两个接口。哪种接口方法被覆盖?
Java 什么是Runtime.getRuntime()。totalMemory()和freeMemory()?
java.library.path中的java.lang.UnsatisfiedLinkError否*****。dll
JavaFX“位置是必需的。” 即使在同一包装中
Java 导入两个具有相同名称的类。怎么处理?
Java 是否应该在HttpServletResponse.getOutputStream()/。getWriter()上调用.close()?
Java RegEx元字符(。)和普通点?