R:删除for循环中的对象

标签 r

我是 R 语言的新手。我想像这样在循环中删除所有对象:

for (name in ls()) rm(name)

不幸的是,我没有工作。有人可以解释为什么吗? 谢谢

最佳答案

您正在删除变量 name 而不是名为 name 的对象。为了删除对象,您需要使用rmlist 参数。

# creating variable name
name <- ls()[1]
# removing variable name
rm(name)
# creating variable name
name <- ls()[1]
# removing object called name
rm(list=name)

所以你的循环应该是这样的

for (name in ls()) rm(list = name)

但是,这会在您的全局环境中留下一个名为 name 的对象。最好只使用@Andrie 的回答

rm(list = ls())

关于R:删除for循环中的对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28742373/

相关文章:

c++ - 我使用 gperftools 来分析带有 RCpp 的 R 脚本是否正确?

r - 获取 df (dplyr::count) 每一列的摘要

r - 使用两个比例颜色渐变ggplot2

R 函数 read.csv 失败, "scan() expected ' 是一个真实的',得到......“消息

R:改进工作流程并跟踪输出

r - 使用 igraph::E()[] 和 igraph::edge_attr() 按边缘属性选择边缘时,我得到不同的(意外的)结果,为什么?

r - 找出单个单词名称

R 当前时间(以毫秒为单位)

r - 在Knitr输出中对长字符串进行文本包装(RStudio)

r - 使用 knitr 以不同方式着色 R 输入和输出