已处理代码上的 R rm() 函数

标签 r

rm() 怎么了?我可以使用字符串删除对象,但生成字符串的处理似乎不起作用:

obj <- "my.obj"
o.str <- "obj.test"
class(sub("[.]test","",o.str)) # "character"
class("obj") # "character"
identical(sub("[.]test","",o.str),"obj") # "TRUE"
rm("obj") # works
obj <- "my.obj"
rm(sub("[.]test","",o.str))
# error:
# Error in rm(sub("[.]test", "", o.str)) : 
#   ... must contain names or character strings 

为什么?

最佳答案

使用给定字符串删除值的更好方法是通过 list=争论

rm(list=sub("[.]test","",o.str))

记录“...”的方式是它期望对象为带引号或不带引号的名称。它不期望返回名称的函数。就是这样list=是为了。

关于已处理代码上的 R rm() 函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30071885/

相关文章:

r - R 中的二项式 TreeMap

r - 使用 purrr 映射 dplyr::select

r - ggplot2 可以找到交叉点 - 还是有其他巧妙的方法?

r - 在R的回归中如何处理残差中的NA?

r - 使用 group by、mutate、select 动态命名管道的输出

html - 如何将 pandoc_options 作为 output_options 传递给 rmarkdown::render()

r - 保存 R 中循环内生成的绘图

r - 将 lmer 输出到 word/excel

R ggplot 和 gt 输出 - 如何将它们组合到输出图像上

r - 什么是命名号码?