我有一个包含四列的电子表格,其中B列和D列包含过去30天内使用各种道路的汽车数量。宏已处理这些范围内的数据并将异常值更改为“坏”,因此以下相关公式忽略它们:
{=IFERROR(CORREL(IF(B4:B33<>"Bad";IF(D4:D33<>"Bad";B4:B33));IF(B4:B33<>"Bad";IF(D4:D33<>"Bad";D4:D33)));"0")}
列A和C包含计数的日期。不幸的是,有时候这些日期不一样,某些地区的圣诞节没有数据,其他地方的节礼日等等。显然这会破坏相关性,因为它会使日期不同步,相关性也会分崩离析。
我有什么方法可以调整公式来检查相关之前的日期是否相同?它几乎就像vlookup
,找到日期,如果匹配,添加到计算,如果没有,则转到下一个日期。如果有很多冲突,我很高兴只关联30天中的26天。
例如,在12月28日进行的最后六天,查看六个日历日,但不包括第28日:
A B C D
22/12/2012 9 22/12/2012 Bad
23/12/2012 10 23/12/2012 22
24/12/2012 3 24/12/2012 21
25/12/2012 7 26/12/2012 18
26/12/2012 8 27/12/2012 15
27/12/2012 15
C列和D列的最后一个单元格是空白的。
我希望公式只关联四天,23日,24日,26日和27日,以匹配适当的计数。
鉴于我将把这些信息与多个地点相关联,每个地点都有不同的报告日期,在关联和删除不匹配的日期之前过滤日期不是一个很好的选择,但如果没有,我会考虑它其他方式。
答案 0 :(得分:2)
我不认为只使用单细胞数组公式就可以做到这一点。
然而,借助辅助柱,可以完成。数组 - 在E4:E33
范围内输入以下公式:
{=(IF(COUNTIF(C4:C33;A4:A33);INDEX(D4:D33;MATCH(A4:A33;C4:C33;0));""))}
这应该导致以下结果:
A B C D E
22/12/2012 9 22/12/2012 Bad Bad
23/12/2012 10 23/12/2012 22 22
24/12/2012 3 24/12/2012 21 21
25/12/2012 7 26/12/2012 18
26/12/2012 8 27/12/2012 15 18
27/12/2012 15 15
现在可以使用非数组公式计算相关性:
=IFERROR(CORREL(B4:B13;E4:E13);0)
注意: CORREL
忽略其中一个或两个不是数字的值对,即文本,逻辑或空(但不是0)。因此,没有必要明确检查和排除“错误”或缺失值。