【问题标题】:How to know to which package a particular function belongs to in R prior to package loading?在包加载之前如何知道特定函数在 R 中属于哪个包?
【发布时间】:2017-02-21 00:10:43
【问题描述】:

例如,我知道许多流行的函数,举个例子,比如tbl_df()。我通常不记得它属于哪个包,即data.tabledplyr。所以我必须始终记住并加载一个包,除非我加载了正确的包,否则我不能这样做?tbl_df

在 R 控制台本身加载或安装包之前,有没有办法知道特定功能属于哪个包。

非常感谢任何帮助。 谢谢。

【问题讨论】:

  • 你用过??tbl_df。提供了一个软件包列表。
  • 一个选项是library(sos);findFn("tbl_df")
  • @J_F 这对我不起作用。
  • @akrun 那是新的,不知道它,但它需要时间来运行。我正在使用 Windows 机器。
  • @J_F 这看起来不错。让我检查更多信息。

标签: r package


【解决方案1】:

sos 包可以提供帮助! 试试:

install.packages("sos")
library(sos)
findFn("str_replace")

也试试这个

lsp <- function(package, all.names = FALSE, pattern) 
{ package <- deparse(substitute(package)) ls( pos = paste("package", package, sep = ":"),
all.names = all.names, pattern = pattern ) }

运行该函数后,如果要在stringr包中搜索str_replace函数- lsp(stringr, pattern="*replace")

【讨论】:

  • 也试试这个 - lsp
  • 这有点吓人,因为它仍然是一个很大的字符串搜索并且可以返回许多命中...但是您可以通过单击任何标题对生成的 HTML 表进行排序,包括按函数名称排序,然后快速查看这些选项。
【解决方案2】:

受到@J_F 建议的启发?我使用

缩小了范围
help.search('arima', fields=c('name'), ignore.case=FALSE, agrep=FALSE)

(最重要的是,agrep=FALSE 关闭模糊匹配)

【讨论】:

    猜你喜欢
    • 2020-09-12
    • 1970-01-01
    • 2012-02-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-07-08
    • 2013-09-10
    • 1970-01-01
    相关资源
    最近更新 更多