重复计算两个值之间的距离 Excel

Posted

技术标签:

【中文标题】重复计算两个值之间的距离 Excel【英文标题】:Repetitive calculating distance between two values Excel 【发布时间】:2022-01-17 06:11:32 【问题描述】:

在单个二进制列中,仅由 0 和 1 组成(011111011110101111011),我想计算零之间的距离(如下图所示),或者计算列中连续 1 的数量并重新启动列表中出现 0 时立即计数。

有人能告诉我要结合哪些公式吗?

我可以得到它来计算第一组,但是当第二个 0 出现时,我不知道如何从那个点重新开始计数。

【问题讨论】:

公式无法合并单元格。那些已经存在了吗?还是他们只是为了展示分组?如果没有必要,请edit 在帖子中包含您希望在没有合并单元格的情况下如何从公式中输出? 【参考方案1】:

好吧,您可以对此进行测试,但它会在零旁边的单元格中给出计数...

=IF(A2=1,"",ROW()-COUNTIF(A$1:A2,0)-SUM(B$1:B1))

因此,这可能只是您根据需要进行编辑的开始。

【讨论】:

ROW()-COUNTIF(A$1:A2,0)-SUM(B$1:B1) 可以缩短为 SUM(A$1:A2)-SUM(B$1:B1),因为它们都是 1 和 0。此外,如果您更改 COUNTIF 以计算 1: COUNTIF(A$1:A2,1)-SUM(B$1:B1) 您可以删除对它自己行的引用。这样,如果 OP 上面有标题行或其他内容,我们就会得到正确的计数。【参考方案2】:

每当我需要做这样的事情时,我都会使用两个额外的列。

在数据旁边的列(即 B)中,在顶部单元格 (B1) 中输入 1。

在 B 列的其余单元格中输入公式(此处为单元格 B2):

=IF(A2=A1;B1+1;1)

如果 A 列中有 1,这会将前一个数字加 1,否则将计数重置为 1,因此它会跟踪连续 1 的数量(或零)的运行总数。

现在在 C 列中,在所有单元格中添加以下公式(为单元格 C1 制定的公式):

=IF(AND((A1=1);(A2<>1));B1;"")

这只是检查它是否是系列中的最后一个 1 并从 B 列复制值,否则返回一个空字符串。结果如下所示:

然后您可以隐藏 B 列以仅在 C 列中显示结果。

【讨论】:

以上是关于重复计算两个值之间的距离 Excel的主要内容,如果未能解决你的问题,请参考以下文章

计算Excel表格中两个地方之间的地理坐标距离

如何计算两个经纬度之间的距离[重复]

在JavaScript中计算两个geolocs之间的距离[重复]

如何使用它们的经度和纬度值计算两个位置之间的距离

两个 GEO 位置之间的距离 [重复]

Excel中计算两个日期之间的天数,扣除周六周日