我想从外部数据文件初始化一些变量。一种方法是设置如下文件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)
似乎无效。