如何清空R中的列表?

Ati*_*rag 1 r list empty-list

我有一个带有R程序的文件.我在R上交互式加载它,然后我调用main函数.在执行期间,我填写了一些全局列表但是当我再次运行main函数时,我希望这些列表为空.我怎样才能清空填好的清单?我试过了

list <- NULL
Run Code Online (Sandbox Code Playgroud)

执行后但它没有奏效.

Dre*_*een 5

由于您在全局设置它们,您可能需要list <<- NULL,因为<<-运算符分配全局变量.

编辑,根据@Dason的评论:

<<-在某些情况下,操作员无法在所有可能的环境中更改变量的值.因此,最好使用

assign("list", NULL, envir = .GlobalEnv)
Run Code Online (Sandbox Code Playgroud)

  • 正如我在[这个答案]中解释的那样(http://stackoverflow.com/a/10904810/1003565)使用`<< - `并不像你想象的那么简单.如果你*绝对*知道你希望它是一个全局赋值,那么你使用`assign`会更安全 (4认同)
  • @Atirag:你可以,但是编译完全被命名为类名的数据对象被认为是糟糕的编程习惯.首选是`assign("myList",NULL,envir = .GlobalEnv)` (2认同)