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

📄 xstd.asv

📁 粒子群算法
💻 ASV
字号:
%样本标准化函数
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%输入X为样本矩阵(行向量样本),index为标准化方法
%输出X1为标准化后的样本矩阵
% function [X1]=XStd(X,index)
% [n,m]=size(X);
% switch index
%     case '标准差标准化'
%         for k=1:n
%             X1(k,:)=(X(k,:)-mean(X(k,:)))/std(X(k,:));
%         end
%     case '模标准化'
%         MOData=sqrt(sum(X.^2));
%         X1=X./MOData(ones(n,1),:);
%     case '中心标准化'
%         MEANData=mean(X);
%         X1=X-MEANData(ones(n,1),:);
%     case '级差标准化'
%         MEANData=mean(X);
%         TempData1=X-MEANData(ones(n,1),:);
%         Temp=minmax(X');
%         TempData2=(Temp(:,2)-Temp(:,1))';
%         X1=TempData1./TempData2(ones(n,1),:);
%     case '级差正规化'
%         MINData=min(X);
%         TempData1=X-MINData(ones(n,1),:);
%         Temp=minmax(X');
%         TempData2=(Temp(:,2)-Temp(:,1))';
%         X1=TempData1./TempData2(ones(n,1),:);
% end
H1=xlsread('test.xls',1,'A1:J64');

%H1=xlsread('tading.xls',1,'A1:H123');
  
%  
%   [b,a]= butter(5,0.5);
%   H1=filtfilt(b,a,H);

  data=H1;
         data=(data-ones(size(data,1),1)*min(data))./(ones(size(data,1),1)*(max(data)-min(data)));
 H1=data ; 
% k=1;
%  for i=0:3
%     % H1=data ;
%     if i ==1
%     
%     end
%   switch i  
%      case 0
%    A1=H1(17:64,1:8);
%    B1=H1(17:64,9);
%    case 1
%           A1=[H1(1:16,1:8);H1(33:64,1:8)];
%           B1=[H1(1:16,9);H1(33:64,9)];
%    case 2
%           A1=[H1(1:32,1:8);H1(49:64,1:8)];
%           B1=[H1(1:32,9);H1(49:64,9)];
%    case 3
%           A1=H1(1:48,1:8);
%           B1=H1(1:48,9);         
%   end
%    % A1=[H1(16*(i-1)+1:16*i,1:8),H1(16*i+1:16(i+1),1:8)] 
%     
%      
%      C1=H1(16*i+1:16*(i+1),1:8) ;
%      D1=H1(16*i+1:16*(i+1),9) ;
%      
%     model = svmtrain(B1, A1, '-s 3 -t 2 -g 0.9 -c 50 -p 0.01');
%   
%    [y, accuracy] = svmpredict(D1, C1, model);
%    if k==1
%           Y=y;
%           k=0;
%   
%    else
%         Y=[Y;y];
%    end
%   
%    
%      
%  end
% D1=H1(:,9);
% 
%  T=[1:1:48]';   
%  V=[1,65,-0.5,1.5];
%  D1=[D1(1:16,1);D1(33:64,1)];
%  Y=[Y(1:16,1);Y(33:64,1)];
%  
%   
%  X=abs(D1-Y);
%  error=sqrt(sum(X.^2)/test_num)
%  
% plot(T,D1,'r--','LineWidth',2 );
% axis(V)
%    hold on
%    plot(T,Y,'b','linewidth',2);
%    axis(V)
 
%  A1=H1(1:40,1:8);
%  B1=H1(1:40,9);
%  C1=H1(41:60,1:8);
%  D1=H1(41:60,9);
 A1=H1(1:80,1:7);
 B1=H1(1:80,8);
 C1=H1(81:120,1:7);
 D1=H1(81:120,8);  
 
 

test_num=40;
 
% E=xlsread('test.xls',1,'J1:J50');
 % [n,m]=size(A);
  %[p,q]=size(C);

 
 % data=A;
  %       data=(data-ones(size(data,1),1)*min(data))./(ones(size(data,1),1)*(max(data)-min(data)));
 %A1=data ;   
         %  MOData=sqrt(sum(A.^2));
        % A1=A./MOData(ones(n,1),:);
 %data=B;
  %      data=(data-ones(size(data,1),1)*min(data))./(ones(size(data,1),1)*(max(data)-min(data)));
 %B1=data ;
        
 %data=C;
 %data=(data-ones(size(data,1),1)*min(data))./(ones(size(data,1),1)*(max(data)-min(data)));
 %C1=data;
      %   MOData=sqrt(sum(C.^2));
       %  C1=C./MOData(ones(p,1),:);
         
 %data=D;
  %      data=(data-ones(size(data,1),1)*min(data))./(ones(size(data,1),1)*(max(data)-min(data)));
 %D1=data ;        



    model = svmtrain(B1, A1, '-s 3 -t 2 -g 0.9 -c 50 -p 0.01');
  
   [y, accuracy] = svmpredict(D1, C1, model);
 
   
   X=abs(D1-y);
 error=sqrt(sum(X.^2)/test_num)
 
 T=[1:1:40]';   
 V=[1,40,0,0.5];
 
plot(T,D1,'r--','LineWidth',2 );
axis(V)
   hold on
   plot(T,y,'b','linewidth',2);
   axis(V)

⌨️ 快捷键说明

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