R语言中help、?和??有什么区别?

3

我想找一个R包的函数指令,所以我运行了help('pkg::name')。但是我收到了一个说“没有文档”的信息。我重试了??pkg:name,它返回了一个非常简短的指令。当我使用?pkg:name时,完整的指令显示出来了。 ???help()之间有什么区别?

2个回答

6

您可以阅读“?”的帮助:

> ?"?"

并且需要“??”的帮助:

> ?"??"

简而言之,"?" 用于查找单个已经存在的项目的帮助信息,而 "??" 则是用于搜索一段文本的帮助信息。 因此, "??random" 是在搜索 "random" 的帮助信息,而 "?random" 则是尝试查找名为 "random" 的项目(但由于不存在,因此会提示错误消息)。

文档基本上说 ?help 做的事情是一样的,但是 ? 的代码,即使不考虑 ?? 和二进制 ? 的支持,也做了比调用默认的 help() 更多的事情(据我所记!)。然而,我从未深入挖掘过这些差异。 - moodymudskipper
1
@Moody_Mudskipper,“?”函数,如get("?")所示,还处理类似于class?data.frame的结构,并且还有一个子句联系着著名的德尔斐神谕。真的。不过我还没有弄清楚如何触发它... - Spacedman
1
@spacedman: 尝试使用????something。对于Jie的另一个要点:?pkg::name等同于help("name", "pkg"),而不是help("pkg::name") - user2554330

2
???help()help.search()的简写。

例如:

最初的回答

help("lm")
help.search("linear models")

当您确切知道要搜索什么时,使用第一个函数;当您大致知道要搜索什么时,使用第二个函数。

原始答案翻译成中文为“最初的回答”。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接