有一列Values的编号为Strings,然后在最常见的值下方显示该值以及该值的出现次数(即模式为Strings)。这是一个例子。

+--------+
| Values |
+--------+
|   AA   |
+--------+
|   BB   |
+--------+
|   AA   |
+--------+
|   AA   |
+--------+
|   GG   |
+--------+
|   DD   |
+--------+
|   DD   |
+--------+
|        |
+-----------------+--------+
|   Most Common   |   AA   |
+-----------------+--------+
| Number of times |   03   |
+-----------------+--------+


这将在Google Spreadsheets中完成!
有小费吗?

最佳答案

对于您的特定示例,将其设为A列,这样您就有A1 ='AA',A2 ='BB',...,A7 ='DD'。

为了找到最大元素出现的次数,我们要计算每个唯一元素,然后返回最大数量,因此在单元格中使用公式

=MAX(COUNTIF(A1:A7,A1:A7))


这是一个ARRAY公式,因此在excel中,您必须按Ctrl + Shift + Enter才能使用它。要在Google电子表格中使用,请将其用ARRAYFORMULA包围,以使其成为

=ARRAYFORMULA(MAX(COUNTIF(A1:A7,A1:A7)))


说明:内部countif对A1:A7的单元格进行计数(如果它们等于A1:A7中的每个值),并将它们放入列表中。最大值返回该列表中的最大值。

现在,要获得实际的元素,我们还有另一个ARRAY公式。我们可以执行索引/匹配查找来找出该值,因此在函数内部,max查找具有最大计数的值,然后将其传递给index + match函数以在原始列表中找到该值

=INDEX(A1:A7,MATCH(MAX(COUNTIF(A1:A7,A1:A7)),COUNTIF(A1:A7,A1:A7),0))


对于Google电子表格也是如此

=ARRAYFORMULA(INDEX(A1:A7,MATCH(MAX(COUNTIF(A1:A7,A1:A7)),COUNTIF(A1:A7,A1:A7),0)))


您将A1:A7的每个实例替换为数据的实际范围。

这篇文章很有帮助:
http://www.mrexcel.com/forum/excel-questions/34530-mode-text-strings.html

关于string - 如何在电子表格中输出最常见的值和该值的出现次数?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/18070201/

10-10 20:24