【发布时间】:2022-02-03 15:17:16
【问题描述】:
我有一个由0s 和1s 组成的向量,并且想要识别0s 字符串被1s 包围的索引。如果1s 之间的0s 的数量小于或等于5,我想将这些零更改为1s。
这是一个例子:
> x <- c(0,0,0,1,1,1,0,0,0,1,1,0,0,0,0,0,0,1,1,1,1)
在位置 7,8 和 9,我只有三个零,因此需要将它们更改为 1。其他零大于 5,因此无需更改。
生成的向量应如下所示:
> x_converted <- c(0,0,0,1,1,1,1,1,1,1,1,0,0,0,0,0,0,1,1,1,1)
我正在使用for 循环和if else 语句执行此操作,但我确信必须有更快的方法来执行此操作。
谢谢。
【问题讨论】: