如何消除R中的此循环

Jin

我发现我的以下代码运行太慢,所以我想知道有人能帮助我消除循环并使我的代码运行得更快。这里a和b是两个从0到4的整数列表,这些元素中的大多数都是0。

sim_cal<-function(a,b){
  intScore <- 0 

  for (i in 1:length(a)){
    if (a[i]>0 && b[i]>0){
      intScore <- intScore + min(a[i],b[i])
    } 
  }
  return(intScore)
}
马修·伦德伯格

如果所有值均为非负值,则没有理由测试两个值均大于零,因为最小值的最小值为零且任何正数均为零。因此,对于任何位置ab为零的位置,如果消除测试,则不添加任何总和。

这使以下内容成为等效的,更简单的解决方案:

sim_cal <- function(a,b) {
    sum(pmin(a,b))
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何消除R中的此循环

来自分类Dev

如何在R中循环使用此高阶函数?

来自分类Dev

如何使此循环在R中运行得更快?

来自分类Dev

如何消除每个循环?

来自分类Dev

如何消除保存多个图像中的此问题

来自分类Dev

如何从我的Matlab代码中消除此循环?

来自分类Dev

如何使用向量化而不是循环来优化我的R代码以消除数据帧中逐行重复的NEIGHBORING

来自分类Dev

如何使此内容在div中循环

来自分类Dev

如何使用dplyr消除for循环?

来自分类Dev

如何使用(L,S)apply系列在R中优化此慢速嵌套循环?

来自分类Dev

如何在Firebase中消除此错误:“此域已在使用中。”

来自分类Dev

如何过滤此数组以消除重复的属性?

来自分类Dev

如何从vuetify数据表插槽中消除和理解此错误警告?

来自分类Dev

如何停止此for循环?

来自分类Dev

如何加快此循环?

来自分类Dev

如何循环此数组?

来自分类Dev

如何计时此循环

来自分类Dev

此for / in循环如何工作?

来自分类Dev

如何终止此循环?

来自分类Dev

此for循环如何工作?

来自分类Dev

如何消除for循环中的重复代码?

来自分类Dev

如何消除Matlab中比较操作的循环?

来自分类Dev

如何消除Matlab中比较操作的循环?

来自分类Dev

消除LINQ中的实体循环

来自分类Dev

Prolog:从间接关系中消除循环

来自分类Dev

使用Scala消除Spark中的循环

来自分类Dev

Prolog:从间接关系中消除循环

来自分类Dev

如何避免R中的for循环

来自分类Dev

如何在R中循环