使用 Excel 中的相关函数来改变数组大小

Using Correl Function in Excel for Varying Array Sizes

所以手头问题的当前设置是我有 4 列,员工 ID类别 1类别 2类别 3。我需要为每个员工 ID 找到类别 1 和类别 2、类别 1 和类别 3 以及类别 2 和类别 3 之间的相关性。问题是每个员工 ID 的数组长度不同。有些员工会有 5 条记录,有些员工的 ID 会有 8 条记录。 如果小计按钮内置了 CORREL 函数,那么这个问题就会很简单,因为它按功能分组。

我将如何计算每个唯一员工 ID 的 3 个相关系数? Excel 函数或 VBA 有效

您需要使用 array formula。请查看示例情况的屏幕截图:

如您所见,单元格 G2 的公式为:=CORREL(IF($A$2:$A$16=F2,$B$2:$B$16,""), IF($A$2:$ A$16=F2,$C$2:$C$16,"")) 也就是说,如果 A 列中的单元格与您的 employeeId 匹配,则将相应列中的单元格包含在数组中(第一个 IF 的 B 列和第一个 IF 的 C 列)第二个身份证)。输入公式后,您需要确保按 Ctrl+Shift+Enter 告诉 excel 你想做一个数组公式或 Command+Enter on a Mac.

您显然需要修改公式以适合您的数据大小,如果您正确设置了 $s,则可以将该公式复制到任何单元格。