【问题标题】:R: passing a variable to library, ls and?R:将变量传递给库,ls和?
【发布时间】:2016-02-20 10:57:47
【问题描述】:

我正在尝试将变量传递给 install.package、library、ls 和 ? 将变量传递给 install.package 工作正常,但我得到其他人的错误。

name1 <- as.character("dplyr")
install.packages(name1)
library(name1)
ls(name1)
?name1 

非常感谢您的帮助。

【问题讨论】:

  • 您是否尝试过使用ls(eval(parse(text=name1)))ls(get(name1))。两者都应该工作
  • 请阅读相关功能的文档。所有三个答案都在那里。

标签: r


【解决方案1】:

三个问题之一,library(name1),可以通过选项character.only = TRUE 解决:

library(name1, character.only = TRUE)

要列出库中名称存储在name1 中的所有对象,请尝试

ls(paste0("package:",name1))

ls(getNamespace(name1))

(请参阅here,了解这两个命令之间的区别,包括显示隐藏对象的更多选项)。

关于第三点,?,除了使用help(name1) 之外,我没有其他解决方案可以提供,正如@PierreLafortune 所建议的那样。

【讨论】:

  • 如果他们特别喜欢问号,你也可以使用'?'(name1)
  • 我无法让 ls(eval(name1)) 列出包中的所有函数。
  • @adam.888 我认为如果你直接输入包名而不是使用变量name1,你不会得到想要的结果。我编辑了答案以显示列出包中所有对象的可能性。希望这会有所帮助。
猜你喜欢
  • 2023-03-25
  • 2011-11-24
  • 1970-01-01
  • 2012-05-25
  • 1970-01-01
  • 2023-02-24
  • 1970-01-01
  • 2021-12-12
相关资源
最近更新 更多