⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 模糊识别m2.bas

📁 用VB编写的基于模糊数学原理的模糊识别程序
💻 BAS
字号:
Attribute VB_Name = "modDataTreat"
'模糊识别
'数据预处理方法模块
Option Explicit
'数据的标准差变换
'X:原始数据,执行后保存变换后的数据
Public Sub Data_T1(X() As Double)
    Dim M As Integer, N As Integer, I As Integer, J As Integer
    Dim Ave As Double, S As Double
    N = UBound(X, 1): M = UBound(X, 2)          'N:样品数;M:变量数
    For J = 1 To M
        Ave = 0
        For I = 1 To N
            Ave = Ave + X(I, J)
        Next I
        Ave = Ave / N                           'Ave是平均值
        S = 0
        For I = 1 To N
            S = S + (X(I, J) - Ave) ^ 2
        Next I
        S = Sqr(S / N)                          'S是标准差
        For I = 1 To N
            X(I, J) = (X(I, J) - Ave) / S       '标准差标准化变换
        Next I
    Next J
End Sub

'数据的极差变换
'X:原始数据,执行后保存变换后的数据
Public Sub Data_T2(X() As Double)
    Dim M As Integer, N As Integer, I As Integer, J As Integer
    Dim xMax As Double, xMin As Double, D As Double
    N = UBound(X, 1): M = UBound(X, 2)          'N:样品数;M:变量数
    For J = 1 To M
        xMax = -100000000: xMin = 100000000
        For I = 1 To N
            If X(I, J) > xMax Then xMax = X(I, J)
            If X(I, J) < xMin Then xMin = X(I, J)
        Next I
        D = xMax - xMin                         'D是极差
        For I = 1 To N
            X(I, J) = (X(I, J) - xMin) / D      '极差标准化变换
        Next I
    Next J
End Sub

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -