如何找到具有特定参数的所有函数的名称和位置?有没有办法在全局环境,附加包和已安装的包中找到它们?
答案 0 :(得分:14)
我认为你问这个问题只是为了不丢失Ben great answer. 在这里,我稍微修改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
与[{1}}结合的asNamespace
更好:
basevals <- ls(asNamespace('base'))
basevals[sapply(basevals,uses_arg,'na.rm')]