我有一个对象名称数组v <- c("v1", "v2"),它与对象v1,相关联v2。我应该如何使用删除这些对象rm()?我试过了rm(mget(v)),但出现错误:
Error in rm(mget(v)) : ... must contain names or character strings
Run Code Online (Sandbox Code Playgroud)
--根据对 Dason 指出的问题的更好理解来编辑答案--
由于意图是删除 v 的内容引用的对象而不是 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"
>
Run Code Online (Sandbox Code Playgroud)
OP 希望删除对象 v1 和 v2 而不是 v。正如 Adam 所确定的,解决方案是 rm(list=v)
> rm(list=v)
> v
[1] "v1" "v2"
> v1
Error: object 'v1' not found
> v2
Error: object 'v2' not found
>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6101 次 |
| 最近记录: |