大部分文章,我都读过了。他们推荐使用rm(list=ls()),但我不知道如果我喜欢使用rm()有什么不同
如果我想清除所有变量,可以使用rm()而不是rm(list=ls())吗?
请给我一些建议。谢谢。
发布于 2017-04-28 14:07:43
rm(list=ls())命令会从当前工作区(R内存)中移除所有对象,而rm()命令本身不会执行任何操作。你必须向rm()指定你想要移除的东西。例如,
a<-1
rm(a)将从您的工作区中删除object 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,并且可以扩展到任意数量的对象。想象一下按名称删除100个对象:rm(a,b,c,d,e,f,g,h)等等……
您可以使用参数list为rm()提供一组要删除的对象。由于ls()列出了当前工作空间中的所有对象,并且您将其指定为要删除的对象列表,因此上述命令将从R内存中删除所有对象。
发布于 2018-03-28 00:26:48
rm()基本上就是'remove{base}',它用于从指定的环境移除对象。
rm(list=ls()) means的命令-
在此命令中,list=ls()是基础,这意味着您引用的是工作区中存在的所有对象。
类似地,当您使用list=ls()作为基础时,rm()用于从工作区中删除所有对象。
然而,当涉及到单独使用rm() 时,它不会做任何事情,因为没有‘基础’。
您可以使用rm()删除特定的变量,方法是将它们设置为“base”:
例如的
a <-45
rm(a)https://stackoverflow.com/questions/43672774
复制相似问题