如何在Excel中基于多条件计算相关性?现有公式失效求解决
问题解决:区域1雷诺汽车最高速度与完成状态的相关性计算
原公式失效原因
你所用公式里的AND函数在数组运算场景下无法返回逐行的布尔值数组,只会输出一个整体的TRUE/FALSE结果,导致IF函数没法正确筛选符合条件的行数据,因此公式无法正常运行。
修正后的公式
方案1:兼容旧版Excel的数组公式
=CORREL(IF((A2:A5=1)*(B2:B5="Renault"), C2:C5), IF((A2:A5=1)*(B2:B5="Renault"), D2:D5))
输入完成后,按下 Ctrl+Shift+Enter 组合键确认(Excel 365/2021及以后版本直接回车即可)。
原理:用*(乘号)替代AND,利用Excel中TRUE=1、FALSE=0的特性,只有当两个条件同时满足时乘积结果为1,IF函数会保留对应行的数值,否则返回FALSE,CORREL会自动忽略这些无效值。
方案2:Excel 365/2021+专属简洁写法
使用FILTER函数直接筛选目标数据,逻辑更清晰:
=CORREL(FILTER(C2:C5, (A2:A5=1)*(B2:B5="Renault")), FILTER(D2:D5, (A2:A5=1)*(B2:B5="Renault")))
直接回车即可运行,无需特殊组合键。
额外说明
根据你提供的数据,区域1的雷诺汽车仅有1条记录,而相关性计算需要至少2组有效数据才能得出结果,因此即使公式正确,运行后会返回#DIV/0!错误。你需要补充更多区域1雷诺汽车的样本数据,才能得到有效的相关性结果。
内容的提问来源于stack exchange,提问作者user20071658
相关产品推荐
相关产品推荐

