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/