【发布时间】:2019-06-10 13:19:32
【问题描述】:
library(tidyverse)
mtcars %>% .[1:2, ]
当我%>% 管道数据集转发时,我通常使用. 句点来完成任务。上面提供了一个示例。我注意到许多其他人也使用句号 .。
最近,我在 stackoverflow 上得到了一个答案,其功能等同于 `[`(以及一些其他交换页),如下所示。
mtcars %>% `[`(1:2, )
这是什么`[`?如果您可以在 cmets 中推荐一种在 Google、Bing 等上搜索此类内容的方法。当您在 Google 中搜索 `[` 时,搜索结果并不多。
【问题讨论】:
-
`[`是实际功能。[]是您使用它的方式。为什么不在 R 控制台中输入?`[`?或者只是`[`来查看它的源代码。我猜这是this的密密麻麻的欺骗 -
某些函数中通常有特殊字符需要使用反引号,通常是内部函数,例如索引(
[、$、[[)和带空格的函数在名称中(不常见)。在 R 控制台上,'['和"["都返回字符串,因此反引号是一种表示 “不是字符串,是 特殊” 的方式。 -
这些括号是特定对象的访问器方法,可以像普通函数一样使用,通过使用反引号。在这种情况下,函数的第一个参数是对象本身,应该在 dplyr 链中省略。您可能会发现以下有用:adv-r.had.co.nz/Functions.html#all-calls
-
JasonHunter,DSGym 的链接很好地解释了其中的大部分内容。为了配合我的第一条评论,该函数的
<-组件使它“特别”。尽管您可以单独使用levels(使用该示例),但<-要求您告诉R 不要单独解析<-,因此`levels<-`(带有反引号)是访问该特殊因素的方式-效用函数。
标签: r