【问题标题】:eval trouble into R package将问题评估到 R 包中
【发布时间】:2019-12-09 13:12:36
【问题描述】:

我一直在制作要上传到 CRAN 的包,但我遇到了一点麻烦。

如果您访问网站https://github.com/elflacosebas/migraR,您会找到该包裹。

您可以运行示例来测试它。

当我想避免附加并执行 best_migramod 函数时,问题就来了。然后,它将在 fit_migramod 内部使用,它使用名为 Migramodel 的类。

您现在可以在没有以下行代码的情况下运行该示例:

colnames(data1) <- c("x","y")

attach(data1)

我得到的错误是:

Error in eval(.self$expr, c(as.list(p), as.list(data))) : object 'x' not finded

我曾尝试使用 attach 和 detach 将其解决为 best_migradmod 函数,但它不起作用。我知道这是一个环境问题,正如这篇文章所说的那样。

Error in eval(expr, envir, enclos) : object not found

我应该把附件放在哪里?或其他运营商,还是我应该修改数据文件?或

非常感谢您的提示!

【问题讨论】:

  • attach 不推荐。如果要提取变量,请使用[[$ 或使用with
  • 特别是不在包内
  • akrun 是的,但是我已经检查过了,但是如果您看到 attach 不在包中,我已经看到了这些功能,但是我一直在尝试不同的方式...在哪里放置 [[ $ 还是与?

标签: r eval environment


【解决方案1】:

在我的笔记本电脑上工作的例子没有你提到的两行

会话信息() R 版本 3.6.0 (2019-04-26) 平台:x86_64-w64-mingw32/x64(64位) 运行于:Windows 10 x64(内部版本 18362)

矩阵产品:默认

随机数生成: RNG:梅森-Twister 正常:反转 示例:四舍五入

语言环境: [1] LC_COLLATE=Spanish_Colombia.1252 LC_CTYPE=Spanish_Colombia.1252 LC_MONETARY=Spanish_Colombia.1252 [4] LC_NUMERIC=C LC_TIME=Spanish_Colombia.1252

附加的基础包: [1] stats graphics grDevices utils datasets methods base

其他附加包: [1] migraR_0.1.2 devtools_2.2.1 usethis_1.5.1 dplyr_0.8.3

通过命名空间加载(未附加): [1] Rcpp_1.0.2 rstudioapi_0.10 magrittr_1.5 tidyselect_0.2.5 pkgload_1.0.2 R6_2.4.0
[7] rlang_0.4.2 tools_3.6.0 pkgbuild_1.0.6 sessioninfo_1.1.1 cli_1.1.0 withr_2.1.2
[13] remotes_2.1.0 ellipsis_0.3.0 rprojroot_1.3-2 assertthat_0.2.1 digest_0.6.20 tibble_2.1.3
[19] crayon_1.3.4 processx_3.4.1 purrr_0.3.3 callr_3.3.1 fs_1.3.1 ps_1.3.0
[25] curl_4.0 testthat_2.3.1 memoise_1.1.0 glue_1.3.1 compiler_3.6.0 pillar_1.4.2
[31] backports_1.1.4 desc_1.2.0 prettyunits_1.0.2 pkgconfig_2.0.2

【讨论】:

  • 可以根据电脑的配置改变包吗?这是要添加到此发展中的另一个问题。谢谢 Cesc13。
猜你喜欢
  • 1970-01-01
  • 2013-07-13
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-04-22
  • 2011-01-17
  • 2013-11-04
  • 1970-01-01
相关资源
最近更新 更多