首页 > 解决方案 > 将 when() 子句添加到嵌套的 foreach 循环

问题描述

我正在尝试在 R 中构建一个嵌套的 foreach 循环,以过滤一些我知道会失败的情况并返回一个空列表。代码类似于:

TASK <- foreach (i = 1:MAX,.combine='rbind') %:%
          foreach (j = 1:MAX,.combine='rbind') %:%
            when( OD[i,j] >= MIN) ) %dopar%
{ 
  do things ...
}

主要问题是我收到以下错误

错误:至少需要一个匹配条件。

我什至尝试过 when(TRUE) 并且我总是得到同样的错误。嵌套的 foreach 循环在没有 when 子句的情况下完美运行(前提是我的第一条指令是检查它)。

您可以在嵌套的 foreach 中包含 when() 子句吗?我搜索了互联网和文档,所有示例都使用单个 foreach 构造。

提前致谢。

标签: rforeachnested

解决方案


最新的 CRAN 版本 (1.5.1) 解决了这个问题。


推荐阅读