rm()除特定对象外的所有内容

Car*_*ini 2 r rm set-difference

有人知道如何删除R中除一个对象外的所有内容吗?通常,要删除我编码的所有内容:

rm(list=ls())
Run Code Online (Sandbox Code Playgroud)

所以我尝试过:

rm(c(list=ls()-my_object))
Run Code Online (Sandbox Code Playgroud)

但它不起作用.

Sym*_*xAU 5

setdiff()函数显示了集之间的差异,因此我们可以使用它来区分所有对象(ls())和要保留的对象.例如

## create some objects
df <- data.frame()
v <- as.numeric()

# show everything in environment
objects()
# [1] "df" "v"

## or similarly
ls()
# [1] "df" "v"

## the setdiff() funciton shows the difference between two sets
setdiff(ls(), "df")
# [1] "v"

# so we can use this to remove everything except 'df'
rm(list = setdiff(ls(), "df"))
objects()
# [1] "df"
Run Code Online (Sandbox Code Playgroud)

  • 我最近似乎吸引了很多反对票,看起来我有一个粉丝 (2认同)