• 大小: 5KB
    文件类型: .m
    金币: 1
    下载: 0 次
    发布日期: 2021-01-06
  • 语言: Matlab
  • 标签: FDA  matlab  

资源简介

Fisher判别分析的matlab程序

资源截图

代码片段和文件信息

%FDA算法
clearclc
% load CSTR_Train50x10
% load CSTR_Train1
f0=xlsread(‘f0.xlsx‘);f1=xlsread(‘f1.xlsx‘);f2=xlsread(‘f2.xlsx‘);

mvf0=mean(f0);
sdf0=std(f0);
f=‘f0f1f2‘;
p=(1/2)*size(f2);
m=size(f02);                           %变量维数

%---------数据标准化-----------
n=zeros(1m);
for i=1:p
    eval([‘a=‘f(2*i-1:2*i)‘;‘]);      %方括号表示字符串的合并
    n(i)=size(a1);                     %求第i类样本数
    fs=zeros(n(i)m);
    for j=1:n(i)
        fs(j:)=(a(j:)-mvf0)./sdf0;    %按正常数据的均值和标准差进行标准化
    end
   eval([f(2*i-1:2*i)‘=fs;‘]);         %f0~f6均为标准化后的矩阵
end

%------------求内部离散度和类内离散度---------------
mvf=zeros(pm);
Sw=zeros(mm);                          %类内离散度
for i=1:p
    eval([‘a=‘f(2*i-1:2*i)‘;‘]);
    mvf(i:)=mean(a);                   %类i的均值向量
    Sj=zeros(mm);

评论

共有 条评论