表格中出现的加权计数(普通 Excel)

表格中出现的加权计数(普通 Excel)

假设我有下表:

A    B    C
B    C
A    C
A

我想计算 A–C 每次出现的频率,但要根据每行出现的次数来衡量。

对于此示例,权​​重将是 1/3、1/2、1/2 和 1,因为每行分别出现 3、2、2 和 1 次。

那么,我对 A–C 进行加权计数时需要进行的最终计算是:

A: 1/3 + 1/2 + 1 = 1,83
B: 1/3 + 1/2 = 0,83
C: 1/3 + 1/2 + 1/2 = 1,33

知道在 Excel 中要使用哪种公式组合才能实现这一点吗?请注意,表格大约有 100,000 行和 3 列,因此重要的是计算不会使文件速度减慢太多。

答案1

如果字符串中每个子字符串最多只有一个实例,则可以使用countif/numberOfSubstrings

如果子字符串的长度可能超过一个字母,则可以使用

LEN($J$1:$J$4) - LEN(SUBSTITUTE($J$1:$J$4," ",""))+1

返回子字符串的数量。 如果它们只有一封信那么长,你可以简化它。

然后,您可以使用:

=SUM(ISNUMBER(FIND(K1,$J$1:$J$4))/(LEN($J$1:$J$4) - LEN(SUBSTITUTE($J$1:$J$4," ",""))+1))

返回结果。

在某些早期版本的 Excel 中,您可能需要“确认”此数组公式按住ctrl+shift并点击enter。如果你操作正确,Excel 会{...}在公式栏中看到括号

在此处输入图片描述

相关内容