大多数文章,我都读过。他们建议使用rm(list=ls())
但我不知道如果我想使用rm()
如果我想清除所有变量,是否可以使用rm()
代替rm(list=ls())
?
请给我一些建议。感谢。
答案 0 :(得分:11)
命令rm(list=ls())
从当前工作空间(R内存)中删除所有对象,而rm()
单独执行任何操作。您必须指定要删除的内容rm()
。例如,
a<-1
rm(a)
会从您的工作区中删除对象a
。相比之下,
a<-1
b<-2
rm(a)
会从内存中删除对象a
,但保持对象b
不受影响。以下内容将删除a
和b
:
a<-1
b<-2
rm(list=ls())
rm(list=ls())
比rm(a, b)
更容易编写,a
也会从您的环境中删除b
和rm(a,b,c,d,e,f,g,h)
,并可扩展到任意数量的对象。想象一下,按名称删除100个对象:rm()
等等......
您可以使用参数list
为要删除的ls()
一堆对象。由于def join_str(tmp_dict, x):
lst_x = list(x)
lst_keys = list(tmp_dict.keys())
lst_keys = [int(key) for key in lst_keys]
max_key = max(lst_keys)
for i in range(len(lst_x), max_key + 1):
lst_x.append(' ')
for key in tmp_dict:
lst_x[key] = tmp_dict[key]
return ''.join(lst_x)
列出当前工作空间中的所有对象,并将其指定为要删除的对象列表,因此上述命令将从R存储器中删除所有对象。
答案 1 :(得分:2)
rm()
基本上是&#39;删除{base}&#39;,它用于从指定环境中删除对象。
命令rm(list=ls())
表示 -
list=ls()
是此命令的基础,表示您指的是工作空间中存在的所有对象。
同样,当您使用rm()
作为基础时,list=ls()
用于从工作区中删除所有对象。
然而,
当涉及单独使用rm()
时,它不会做任何事情作为基础&#39;没有。
您可以使用rm()
删除特定变量,方法是将其作为&#39; base&#39;:
例如
a <-45
rm(a)