【问题标题】:R documentation and help page - An example with the pipe operator [duplicate]R文档和帮助页面-管道运算符的示例[重复]
【发布时间】:2016-04-21 03:54:00
【问题描述】:

我想知道这个%>%,所以我在控制台中输入了?%>%并得到: Error: unexpected SPECIAL in "?%>%"。很公平。于是我输入了?"%>%",得到了以下信息:

%>%                   package:tidyr                    R Documentation

Pipe operator

Description:

     See ‘%>%’ for more details.

Usage:

     lhs %>% rhs

那好吧!但是,键入 ?'%>%' 会引导我进入完全相同的帮助页面。我的错误是什么?
不需要解释管道操作员,我现在已经用谷歌搜索了,但是我会怎么做,我是在没有互联网的火车上吗?

编辑。 我发现这个问题有点误导,所以让我改一下。如何在 R 的帮助文档中找到适合 %>% 管道运算符的文档?如果文档告诉我“请参阅...了解更多详细信息”,这到底意味着什么?那我该怎么办?

【问题讨论】:

  • 您始终可以使用help() 函数。您不必使用?。如果文档说“请参阅...了解详细信息”,您应该会看到“...”。
  • 这个问题现在几乎和污染平均值一样频繁
  • 顺便说一句,help? 的帮助文件会告诉你如何使用它们。检查example("?")

标签: r operators tidyr


【解决方案1】:

%>% 是二进制中缀运算符,您需要将其与操作数一起使用,否则会收到错误消息。因此指定的用法:

lhs %>% rhs

在上述情况下,编写?%>% 将尝试使用? 作为lhs 运算符 调用%>%。因此出现错误... unexpected SPECIAL ...。另一方面,如果您将运算符包装在'...' "..." 中,它将按照您的意图使用? 前缀:显示该运算符的帮助部分。

例如,在您的控制台中尝试以下操作:

?<     <-- Error: unexpected '<' in "?<"
?'<'   <-- OK
?"<"   <-- OK

(在第一次编辑问题后)

现在,关于您更新的问题,在哪里可以找到适合管道操作员的文档,我引用 this site

虽然不是必需的,但 tidyr 和 dplyr 包使用 管道运算符 %>% 由 Stefan Milton Bache 在 R 包中开发 马格利特。虽然 tidyr 和 dplyr 中的所有功能都可以使用 没有管道操作员,这些是极大的便利之一 包提供的是将多个功能串在一起的能力 通过合并 %>%。

因此,在magrittr 包的文档中是一个合适的起点:


(在第二次编辑问题后)

最后,如果我们查看how the associated tidyr manual page for the pipe operator is generated,我们会得到您最终编辑的答案:

% Generated by roxygen2: do not edit by hand
% Please edit documentation in R/utils.R
\name{\%>\%}
\alias{\%>\%}
\title{Pipe operator}
\usage{
lhs \%>\% rhs
}
\description{
See \code{\link[magrittr]{\%>\%}} for more details.
}
\keyword{internal}

因此,您的帮助页面应该包含指向管道操作员的magrittr 帮助页面的链接,但如果您从例如终端(你是吗?),那么您将只看到纯文本,因此失去(或至少看不到)链接。

【讨论】:

    【解决方案2】:

    %&gt;% 最初来自 matrittr 包。您可以在此处找到有关管道运算符的文档 (Github page)。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2022-06-29
      • 1970-01-01
      • 2011-09-27
      • 2011-10-28
      • 1970-01-01
      • 2019-07-15
      • 2013-07-01
      • 1970-01-01
      相关资源
      最近更新 更多