gpt4 book ai didi

algorithm - 使用第二个向量的分组对向量执行 boolean 运算

转载 作者:塔克拉玛干 更新时间:2023-11-03 03:09:48 25 4
gpt4 key购买 nike

我有两个带有二进制值的向量,表示有关某些数据向量的信息。第一个向量标识数据向量的某个元素是否损坏。第二个向量标识其他元素受到影响并因此也被破坏的范围。载体看起来像这样。

itself_broken = c(FALSE, FALSE, FALSE, FALSE, TRUE, FALSE, TRUE, FALSE)
startpoint = c(TRUE, FALSE, FALSE, TRUE, FALSE, TRUE, FALSE, FALSE)

我现在想在以下意义上找到所有被破坏的元素:如果两个起点之间的一个元素被破坏,那么这两个起点之间的所有其他元素(包括左边的起点)也是如此。所以在上面的例子中,结果向量应该是:

all_broken = c(FALSE, FALSE, FALSE, TRUE, TRUE, TRUE, TRUE, TRUE)

我可以通过对每个向上的 itself_broken 元素使用一个循环来实现这一点,将元素标记为已损坏,直到到达起点。但这对我来说似乎效率很低。

解决这个问题的正确方法是什么?

最佳答案

像这样:

ave(itself_broken, cumsum(startpoint), FUN = any)

关于algorithm - 使用第二个向量的分组对向量执行 boolean 运算,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15511089/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com