R 文档和帮助页面 - 管道运算符的示例
R documentation and help page - An example with the pipe operator
我想知道这个 %>%
所以我在控制台输入 ?%>%
并得到:
Error: unexpected SPECIAL in "?%>%"
。很公平。所以我输入 ?"%>%"
并得到以下内容:
%>% package:tidyr R Documentation
Pipe operator
Description:
See ‘%>%’ for more details.
Usage:
lhs %>% rhs
那好吧!但是,键入 ?'%>%'
会将我带到完全相同的帮助页面。我的错误是什么?
无需解释管道操作员,我现在已经用谷歌搜索了,但我会怎么做,我是在没有互联网的火车上吗?
编辑。 我发现这个问题有点误导,所以让我改一下。如何在 R 的帮助文档中找到 %>%
管道运算符的相应文档?如果文档告诉我 "See ... for more details",这到底是什么意思?那我该怎么办?
%>%
是二元中缀运算符,需要和操作数一起使用,否则会报错。因此指定的用法:
lhs %>% rhs
在你上面的例子中,写 ?%>%
将尝试调用 %>%
使用 ?
作为你的 lhs operator。因此错误 ... unexpected SPECIAL ...
。另一方面,如果您将运算符包装在 '...'
或 "..."
中,它将按您的意图使用 ?
前缀:显示该操作员的帮助部分。
例如,在您的控制台中尝试以下操作:
?< <-- Error: unexpected '<' in "?<"
?'<' <-- OK
?"<" <-- OK
(第一次编辑问题后)
现在,关于你更新的问题,在哪里可以找到管道运算符的适当文档,我引用 this site
Although not required, the tidyr and dplyr packages make use of the
pipe operator %>% developed by Stefan Milton Bache in the R package
magrittr. Although all the functions in tidyr and dplyr can be used
without the pipe operator, one of the great conveniences these
packages provide is the ability to string multiple functions together
by incorporating %>%.
因此,magrittr
包的文档是一个合适的起点:
- https://cran.r-project.org/web/packages/magrittr/vignettes/magrittr.html
- ...
?magrittr
或 ??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}
因此,您的帮助页面应该包含一个 link 到 magrittr
管道操作员帮助页面,但是如果您是 运行 来自例如终端(是吗?),那么您将只看到纯文本,如此松散(或至少看不到)link.
%>%
最初来自 matrittr
包。您可以在那里找到有关管道运算符的文档 (Github page)。
我想知道这个 %>%
所以我在控制台输入 ?%>%
并得到:
Error: unexpected SPECIAL in "?%>%"
。很公平。所以我输入 ?"%>%"
并得到以下内容:
%>% package:tidyr R Documentation
Pipe operator
Description:
See ‘%>%’ for more details.
Usage:
lhs %>% rhs
那好吧!但是,键入 ?'%>%'
会将我带到完全相同的帮助页面。我的错误是什么?
无需解释管道操作员,我现在已经用谷歌搜索了,但我会怎么做,我是在没有互联网的火车上吗?
编辑。 我发现这个问题有点误导,所以让我改一下。如何在 R 的帮助文档中找到 %>%
管道运算符的相应文档?如果文档告诉我 "See ... for more details",这到底是什么意思?那我该怎么办?
%>%
是二元中缀运算符,需要和操作数一起使用,否则会报错。因此指定的用法:
lhs %>% rhs
在你上面的例子中,写 ?%>%
将尝试调用 %>%
使用 ?
作为你的 lhs operator。因此错误 ... unexpected SPECIAL ...
。另一方面,如果您将运算符包装在 '...'
或 "..."
中,它将按您的意图使用 ?
前缀:显示该操作员的帮助部分。
例如,在您的控制台中尝试以下操作:
?< <-- Error: unexpected '<' in "?<"
?'<' <-- OK
?"<" <-- OK
(第一次编辑问题后)
现在,关于你更新的问题,在哪里可以找到管道运算符的适当文档,我引用 this site
Although not required, the tidyr and dplyr packages make use of the pipe operator %>% developed by Stefan Milton Bache in the R package magrittr. Although all the functions in tidyr and dplyr can be used without the pipe operator, one of the great conveniences these packages provide is the ability to string multiple functions together by incorporating %>%.
因此,magrittr
包的文档是一个合适的起点:
- https://cran.r-project.org/web/packages/magrittr/vignettes/magrittr.html
- ...
?magrittr
或??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}
因此,您的帮助页面应该包含一个 link 到 magrittr
管道操作员帮助页面,但是如果您是 运行 来自例如终端(是吗?),那么您将只看到纯文本,如此松散(或至少看不到)link.
%>%
最初来自 matrittr
包。您可以在那里找到有关管道运算符的文档 (Github page)。