1

我正在编写一个 R 包。我的一个函数采用另一个函数和其他一些与数据相关的参数,并使用foreach包运行一个%dopar%循环。这个使用 foreach 的功能在我的包的主要功能之一中使用。

当我从另一个文件调用主函数时,在加载了我的包后,我收到了消息

 Error in { : task 1 failed - "could not find function "some_function"

some_function我的包中的一些功能在哪里。.export当我将调用中的参数设置为以下任何一项时,我收到此消息,其中缺少不同的功能foreach

  • ls(as.environment("package:mypackagename"))
  • ls(.GlobalEnv)
  • ls(environment())
  • ls(parent.env(environment()))
  • ls(parent.env(parent.env(environment()))

甚至是上述的串联。我还尝试将我的包名称传递给.package参数,这只会产生错误消息

Error in e$fun(obj, substitute(ex), parent.frame(), e$data) : worker initialization failed: there is no package called ‘mypackagename’

我觉得我几乎尝试了所有东西,我真的需要这段代码才能工作。我应该注意,如果我使用%do%而不是%dopar%. 我究竟做错了什么?

4

0 回答 0