我正在研究 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"
所以我不确定这里出了什么问题......