📄 频数统计m2(bas模块modm).bas
字号:
Attribute VB_Name = "modM"
'频数统计算法
Option Explicit
'P(1 To 样本数,1 To 2):原始数据
'S(1 To 分组数,1 To 2):频段的端点
'R(1 To 分组数,1 To 2):频数统计结果
Public Sub FreFuzz(P, S, R)
Dim I As Integer, J As Integer, L As Integer
Dim M As Integer, N As Integer
Dim P1 As Single, P2 As Single, P0 As Single
Dim S1 As Single, S2 As Single
'根据数组求下标的上界
'M是数据的样本数
'N是频段的组数
M = UBound(P, 1): N = UBound(S, 1)
'统计频数
For I = 1 To M
P1 = P(I, 1): P2 = P(I, 2)
For P0 = P1 To P2 '以1为步长,如果步长不等于1需要填“Step 步长”
For L = 1 To N
S1 = S(L, 1): S2 = S(L, 2)
If P0 >= S1 And P0 < S2 Then R(L, 1) = R(L, 1) + 1
Next L
Next P0
Next I
'求相对频数
For L = 1 To N
R(L, 2) = R(L, 1) / M
Next L
End Sub
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -