我知道rm(list = ls())
将清除我的工作区。
我有一个数据框x,我想保留该数据框,同时从内存中删除其他所有内容。我该怎么办?
rm(list = ls(!x)) #???
答案 0 :(得分:6)
尝试:rm(list = setdiff(ls(), x))
根据米奇的评论进行编辑:
环境中的三个对象:
ls()
[1] "data_df" "list_ls" "vector_v"
删除data_df:
rm(list = setdiff(ls(), "data_df"))
ls()
[1] "data_df"
要保留的东西的载体:
toKeep_v <- c("list_ls", "vector_v")
rm(list = setdiff(ls(), toKeep_v)
ls()
[1] "list_ls" "vector_v"