首页 > 解决方案 > Excel:字符串中连续出现3次或更多的值

问题描述

需要计算 0 连续出现 3 次或更多的实例数。

IE

CAR_NO  1   0   0   0   1   1   0   0   1   0   1   0   0   0   0   1   1

在上述情况下,单元格 A1 为 CAR_NO 且 B1:R1 为 0 或 1。我需要计算 0 出现 3 次或更多的实例数。

最终输出为 2。AS B1:D1 出现了 3 次 0,而 M1:P1 出现了 4 次 0。

标签: excel

解决方案


使用 Base R:
rle函数计算向量中等值运行的长度和值。

x <- c(1 ,0 ,0 ,0 ,1 ,1 ,0 ,0 ,1 ,0 ,1 ,0 ,0 ,0 ,0 ,1 ,1)
rlx <- rle(x)

rlx
Run Length Encoding
    lengths: int [1:9] 1 3 2 2 1 1 1 4 2
    values : num [1:9] 1 0 1 0 1 0 1 0 1

sum(rlx$lengths[x==0] >=3, na.rm = TRUE)
[1] 2


PS:@Mr. 作为OP“原始帖子”发布的投票者答案包括R标签。


推荐阅读