
Excel中求众数
众数是数据集中出现频率最高的数值。在Excel中,有多种方式可以求众数。
方法一:使用“MODE”函数
步骤:
-
选择要计算众数的单元格范围。
在空白单元格中输入公式:=MODE(单元格范围)
按回车键。
方法二:使用数据透视表
步骤:
-
选中数据表。
单击“插入”选项卡,然后单击“数据透视表”。
在“创建数据透视表”对话框中,选择要计算众数的字段。
拖放该字段到“值”字段区域。
右键单击“值”字段,然后选择“值显示选项”。
在“值显示选项”对话框中,选择“显示为”。
从“显示值”列表中选择“众数”。
方法三:使用宏
步骤:
-
按住“Alt”键,然后依次按“F8”和“3”键。
在宏宏对话框中,选择“模块”。
复制和粘贴以下代码:
Sub Mode()
Dim i As Integer
Dim j As Integer
Dim k As Integer
Dim l As Integer
Dim arr() As Variant
Dim v As Variant
'读取数据范围
arr = Range("A1:A" & Range("A" & Rows.Count).End(xlUp).Row).Value
'创建众数组
j = 0
ReDim arr2(1 To UBound(arr))
For i = 0 To UBound(arr)
For k = i + 1 To UBound(arr)
If arr(i, 1) = arr(k, 1) Then
j = j + 1
arr2(j) = arr(i, 1)
End If
Next k
Next i
'排序众数组
For i = 1 To UBound(arr2)
For k = i + 1 To UBound(arr2)
If arr2(i) > arr2(k) Then
l = arr2(i)
arr2(i) = arr2(k)
arr2(k) = l
End If
Next k
Next i
'返回最大出现次数的数组
For i = 1 To UBound(arr2)
If j = 1 Then
v = arr2(i)
ElseIf arr2(i) <> arr2(i - 1) Then
If k < j Then
k = j
v = arr2(i - 1)
End If
j = 1
Else
j = j + 1
End If
Next i
End Sub登录后复制使用方法:
-
在 VBA 编辑器中运行宏。
结果将显示在所选单元格中。
以上就是众数在excel里怎么求的详细内容,更多请关注楠楠科技社其它相关文章!