我有一组对象名v <- c("v1", "v2")
,它与对象v1
,v2
相关联。
我应该如何使用rm()
删除这些对象?
我试过了rm(mget(v))
,但我收到了错误:
Error in rm(mget(v)) : ... must contain names or character strings
答案 0 :(得分:4)
- 根据Dason指出的更好地理解问题来编辑答案 -
由于意图是删除v&amp;的内容所引用的对象。不是v本身,rm(v)
(正如我之前建议的那样)是不合适的(因为它会删除v而不是v的内容指向的对象(即v1和v2)。
> v1 <- "A"
> v2 <- "B"
> #v is a vector containing the references to v1 & v2 as character strings
> v <- c("v1","v2")
> v
[1] "v1" "v2"
> rm(v)
> v
Error: object 'v' not found
> v1
[1] "A"
> v2
[1] "B"
>
OP希望删除对象v1&amp; v2&amp;不是。正如亚当所指出的那样,解决方案将是rm(list=v)
> rm(list=v)
> v
[1] "v1" "v2"
> v1
Error: object 'v1' not found
> v2
Error: object 'v2' not found
>