我想从外部数据文件初始化一些变量。一种方法是设置如下文件foo.csv
:
var1,var2,var3
value1,value2,value3
然后发出:
attach(read.csv('foo.csv'))
问题是,以这种方式var1, var2, var3
没有显示出来,ls()
而且最重要的rm(all=ls())
是不再清理所有东西并且var1, var2, var3
仍然存在。
由于新对象的默认位置是“2”,我可以通过以下方式删除此变量所在的工作区:
detach(pos=2)
或者干脆
detach()
因为pos=2
也是默认的detach
。
但是 detach()
“太”强大了,它可以删除默认加载的 R 对象。这意味着,如果附加许多数据集,重复删除它们detach
可能会导致删除默认的 R 对象,您必须重新启动它。除了单一的简单性rm(all=ls())
消失了。
一种解决方案是直接连接var1, var2, var3
到全球环境。
你知道怎么做吗?
attach(read.csv('foo.csv'), pos=1)
发出警告(未来错误)。
attach(read.csv('foo.csv'), pos=-1)
似乎无效。