查找具有特定参数的函数

Jos*_*ich 16 arguments r function

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

ags*_*udy 14

我假设你提出这个问题只是为了不失Ben的好回答. 在这里我稍微修改Ben的答案来搜索任何参数:

uses_arg <- function(x,arg) 
  is.function(fx <- get(x)) && 
  arg %in% names(formals(fx))
Run Code Online (Sandbox Code Playgroud)

例如,使用na.rm参数获取函数:

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

编辑

更好地与以下一起 name论证:lsasNamespace

basevals  <- ls(asNamespace('base'))
basevals[sapply(basevals,uses_arg,'na.rm')]
Run Code Online (Sandbox Code Playgroud)