在列中出现特定模式之后计算值

我的问题在Excel中解释

列A1:A22有一些二进制数(0,1)。 正如你所看到的,我用绿色填充颜色突出显示了与我想要查找的模式相匹配的数字。 列C5:C22有公式框,你可以在公式框中看到,在数据集中连接前四个数字(A1:A4,A2:A5等),并检查它是否与我的模式匹配。 如果前四个数字匹配我的模式,我希望Excel计算在这个模式之后的所有NEXT数字。

最大的问题是我不能这样做,因为我的数据集有大约30.000条二进制logging,而且我的RAM内存不能处理那么多的CONCENTENATE公式来计算所有的NEXT值,在我的模式发生之后。 我希望有人帮助我find其他的方式,而不使HELPER列,我想Excel的公式,在步骤:

  1. 在数据集中search模式
  2. 如果数据集中的IF模式符合我所需的模式,则在模式出现后立即对所有数值进行平均。 所以在上面的例子中我的平均单元格C5:C22 = 0,66

我希望我详细解释这个,所以你知道我的问题,我需要公式来做所有的math的东西,我不能像上面的例子中使用助手列。 提前致谢。

连接一次,然后replace模式find

你可以在一个单元格中使用CONCATENATE函数,将所有的1和0都放到一个单元格中。
然后用空string"" 来查找 SUBSTITUTE 模式
然后计算有多less模式被“替代”(匹配)。

像这样:

在这里输入图像说明

单元格中的公式

D5-Concat all: =CONCAT(A1:A22)
E5-Len all: =LEN(D5)
F5-Substitute: =SUBSTITUTE(D5;Pattern;"")
G5-Len之后: =LEN(F5)
H5匹配: =(E5-G5)/PatternLen

要把它放到一个单元格中:
=(LEN(CONCAT(A1:A22))-LEN(SUBSTITUTE(CONCAT(A1:A22);Pattern;"")))/PatternLen