我需要在一行中找到最常用的单词(分类文本,例如“T2”),但不能在所有列中找到。如果范围是连续的,我会尝试类似的事情:
=INDEX(B3;M3,MODE(MATCH(B3;M3,B3;M3,0)))
但是,我正在为多个变量执行此操作,并且不希望为每个变量创建单独的子表单/文件,因此希望这是可能的。我正在尝试使用以下公式,但得到一条错误消息,高亮显示MODE功能:
=INDEX((B3;F3;J3),MODE(MATCH(B3;F3;J3,B3;F3;J3,0)))
我的数据看起来像这样:
person A person B person C
ID Var1 Var2 Var3 Var4 Var1 Var2 Var3 Var4 Var1 Var2 Var3 Var4
1 T2 C1 N f T2 C1 N f T4 C9 Y e
2 T4 C5 Y b T4 C1 Y b T2 C1 N e
3 T2 C2 N g T4 C5 Y d T2 C1 N f
4 T4 C9 Y e T4 C1 Y b T2 C1 N e
5 T1 C2 N b T2 C2 N h T2 C2 N g
6 T4 C9 Y b T4 C1 Y b T4 C9 Y f
7 V2 C1 Y c V6 C2 N c T2 C2 N h
我想要的结果是在末尾添加一个列,它给出了最常见的值/名称,Var1的exapmle:
ID Mode_Var1
1 T2
2 T4
3 T2
4 T4
5 T2
6 T4
7 NA
我是否在正确的轨道上?这可能使用索引,模式和匹配吗?如果这不起作用,还有另一种方法吗?谢谢你的帮助!
编辑:添加表格(与图像中相同),第一个示例中的制作范围对应于示例数据
答案 0 :(得分:1)
您将使用INDEX / MATCH数组形式的countif:
=INDEX(B2:M2,MATCH(MAX(IF(MOD(COLUMN(B2:M2),4)=2,COUNTIF(B2:M2,B2:M2))),IF(MOD(COLUMN(B2:M2),4)=2,COUNTIF(B2:M2,B2:M2)),0))
作为数组公式,需要在退出编辑模式时使用Ctrl-Shift-Enter而不是Enter来确认。如果操作正确,Excel会将{}
放在公式周围。
将此公式放入N2,按Ctrl-Shift-Enter,然后复制/向下拖动。
答案 1 :(得分:0)
根据显示的设置,在单元格B13中使用此数组公式* 并上下复制:
=INDEX(INDEX($B$3:$M$9,MATCH($A13,$A$3:$A$9,),0),MODE(IFERROR(MATCH(INDEX($B$3:$M$9,MATCH($A13,$A$3:$A$9,),0),IF($B$2:$M$2=B$12,INDEX($B$3:$M$9,MATCH($A13,$A$3:$A$9,),0)),0),-COLUMN($B$3:$M$9))))
#N/A
结果意味着该ID和Var没有最频繁的输入(所有三个都有不同的条目)。如果你想在那里放一些东西,把公式包装在IFERROR中。
*必须使用 Ctrl + Shift + 输入而不是 Enter 确认数组公式。正确完成后,公式将被大括号{=formula}
包围,这些大括号会自动添加,因此请勿尝试手动添加。