用...公開內容
展示管道運算子%$%
將列名稱作為左側物件內的 R 符號暴露給右側表示式。當管道輸入沒有 data
引數的函式(比如 lm
)並且不將 data.frame 和列名稱作為引數(大多數主要的 dplyr 函式)時,這個運算子很方便。
展示管道運算子%$%
允許使用者在需要引用列名時避免破壞管道。例如,假設你要過濾 data.frame,然後使用 cor.test
在兩列上執行相關性測試:
library(magrittr)
library(dplyr)
mtcars %>%
filter(wt > 2) %$%
cor.test(hp, mpg)
#>
#> Pearson's product-moment correlation
#>
#> data: hp and mpg
#> t = -5.9546, df = 26, p-value = 2.768e-06
#> alternative hypothesis: true correlation is not equal to 0
#> 95 percent confidence interval:
#> -0.8825498 -0.5393217
#> sample estimates:
#> cor
#> -0.7595673
這裡標準的%>%
管道將 data.frame 傳遞給 filter()
,而%$%
管道將列名稱暴露給 cor.test()
。
展示管的工作方式類似於基本 R with()
函式的可管道版本,並且接受相同的左側物件作為輸入。