16

如何找到所有具有特定参数的函数的名称和位置?有没有办法在全局环境、附加包和已安装包中找到它们的功能?

4

1 回答 1

14

我假设你问这个问题只是为了不失去本很好的答案。 在这里,我稍微修改了 Ben 的答案以搜索任何参数:

uses_arg <- function(x,arg) 
  is.function(fx <- get(x)) && 
  arg %in% names(formals(fx))

例如获取带na.rm参数的函数:

basevals <- ls(pos="package:base")      ## package name : here I use the base package
basevals[sapply(basevals,uses_arg,'na.rm')]

编辑

更好地与以下name参数ls结合使用 asNamespace

basevals  <- ls(asNamespace('base'))
basevals[sapply(basevals,uses_arg,'na.rm')]
于 2013-01-21T00:18:13.973 回答