私は tidyverse 関数を使用するパッケージ、つまり非標準の評価を使用するパッケージを作成していますdplyr::filter
。たとえば、次のようになります。
setMethod("filter_by_id",
signature(x = "studies", id = "character"),
definition = function(x, id) {
study_id <- rlang::expr(study_id)
lst <- purrr::map(s4_to_list(x), ~ dplyr::filter(.x, !!study_id %in% id))
y <- list_to_s4(lst, "studies")
return(y)
})
私は!!
オペレーターを使用しています (そして、おそらくパッケージから他のいくつかを使用します) 。この質問で説明されているようrlang
に、 pipe-operator のように明示的にインポートする必要があるかどうか疑問に思っています: R: use magrittr pipe operator in自筆パッケージ。%>%
usethis::use_pipe()
からの演算子以外に同等のものはありrlang
ますか?