首页 > 解决方案 > 无法使用 remove() 删除 r 中的变量

问题描述

我过去曾成功使用该remove()函数来删除数据集和变量。然而,在过去的几天里,尽管我能够删除数据集,但我一直无法删除变量。

我不知道如何将数据上传到 stackoverflow 问题,但我可以向您展示我使用的代码和我得到的输出。数据集被调用test2,变量是verbcatTC。我没有附加数据集。以下是删除此变量的四次尝试,以及每次收到的警告消息。然后我运行两行代码来向你展示这个变量存在于数据集中。

非常感谢您的帮助,如果我能提供更多信息,请告诉我。另外,如果我无法remove()工作,我还可以使用什么其他功能来消除变量?

> remove(test2$verbcatTC)
Error in remove(test2$verbcatTC) : 
  ... must contain names or character strings

> remove("verbcatTC")
Warning message:
In remove("verbcatTC") : object 'verbcatTC' not found

> remove(verbcatTC)
Warning message:
In remove(verbcatTC) : object 'verbcatTC' not found

> remove("test2$verbcatTC")
Warning message:
In remove("test2$verbcatTC") : object 'test2$verbcatTC' not found

> head(test2$verbcatTC)
[1] Positive Positive Positive Positive Positive Positive
Levels: Negative Positive

> str(test2$verbcatTC)
Factor w/ 2 levels "Negative","Positive": 2 2 2 2 2 2 2 2 2 2 ...

标签: r

解决方案


rm()并且remove()用于删除环境中的对象(特别是默认为 RStudio 窗口右上角的全局 env),而不是用于删除列。您应该将 cols 设置NULL为删除它们,或者subset(或Dplyr::select等)您的数据框不包含您要删除的列。如果您只想从环境中删除整个数据框,那么rm()仍然可以。


推荐阅读