无法使用 paste() 分离 R 包

  • 本文关键字:分离 paste r
  • 更新时间 :
  • 英文 :


我正在研究R项目中的一些函数,用于附加和分离包,并且我在让paste()detach()函数内工作时遇到了麻烦(这最终将成为for循环的一部分):

> library(ggplot2)
> (.packages())
[1] "ggplot2"   "stringr"   "readr"     "stats"     "graphics" 
[6] "grDevices" "utils"     "datasets"  "methods"   "base"
> detach(paste("package", "ggplot2", sep = ":"), unload = TRUE)
Error in detach(paste("package", "ggplot2", sep = ":"), unload = TRUE) : 
invalid 'name' argument

但是如果我这样做,它会很好:

> detach("package:ggplot2", unload = TRUE)
> (.packages())
[1] "stringr"   "readr"     "stats"     "graphics"  "grDevices"
[6] "utils"     "datasets"  "methods"   "base"

paste()返回正确的东西:

> paste("package", "ggplot2", sep = ":")
[1] "package:ggplot2"

所以我不确定这里出了什么问题…

尝试添加character.only = TRUEforce = TRUE

detach(paste("package", "ggplot2", sep = ":"), unload = TRUE, character.only = TRUE, force = TRUE)

可能会打印一些警告,但是会分离ggplot2

最新更新