如何解决全局变量“.”没有可见的绑定
我目前正在使用 R
共同开发 devtools
软件包。我们使用
tidyverse %>%
以及我们内部的相关 purrr
和 dplyr
包
功能。
我们的功能之一如下(为清晰起见进行了编辑):
#' Print `cust_modl` object
#'
#' @param x A `cust_modl` object.
#' @param ... Additional arguments passed to `print.cust_modl()` to print the
#' object.
#'
#' @method print cust_modl
#' @export
print.cust_modl <- function(x,...) {
req_var_nms <- x$var %>%
purrr::compact(.x = .) %>%
names(x = .)
comp_var_ind_filt <- req_var_nms %>%
purrr::map(.x = .,.f = ~ purrr::pluck(x$var,.x))
}
目前在我们的 Github Actions NOTE
中给出了一个 devtools::check()
为:
print.cust_modl: no visible binding for global variable ‘.’
我了解此错误是由基于 this helpful post 的 rlang
相关问题引起的。所以通常我们按照建议使用 @importFrom rlang .data
并确保
在 dplyr
中,我们在引用列时正确使用了 .data$
语法。
然而,这个 NOTE
似乎是由 purrr
调用给出的,它不是
明确如何更正 rlang
的导入只为 .
(而不是通常更明确的
.data
调用 dplyr
)。
谁能解释一下如何正确调整 .
调用的 R 包代码
tidyverse 软件包,例如 purrr
?我知道我们可以在本地设置 . <- NULL
,但是有没有更严格的方法来使用 rlang
进行设置?了解此处推荐的指南将使我们的软件包能够按照社区标准进行开发。
免责声明:这是从 here 交叉发布的,因为它已经好几天没有收到回复了。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。