资源简介

随机森林算法可用于数据分类和显现回归,可实现很多功能,效果不错。只需要将所需文件放入matlab路径中即可实现算法

资源截图

代码片段和文件信息

function printRF(out)
%!
%! Description:
%!
%!   Print summary for output object returned from RFReg and RFClass.
%! 
%! Usage:
%!
%!   out = RFReg(param x y);
%!   PrintRF(out);
%!
%! Arguments:
%!
%!   out      An output object returned from RFReg or RFClass.
%!

%
% Last update on Jun. 27 2003
% By Ting Wang   Merck & Co.
%
  nm = fieldnames(out);
  for i=1:length(nm)    % Print parameter settings
    if strcmp(nm(i)‘param‘)
       disp(‘ ‘);
       disp([‘  Number of Trees: ‘num2str(out.param(1))]);
       disp([‘  No. of Variables tried at each split: ‘ ...
               num2str(out.param(2))]);
    end;
  end;
  for i=1:length(nm)    % Print error rate for training/test set
    if strcmp(nm(i)‘errtr‘)
       disp([‘  OOB estimate error rate for training data: ‘ ...
          sprintf(‘%6.4f‘out.errtr(end))‘%‘]);      
    end;
    if strcmp(nm(i)‘errts‘)
       disp([‘  OOB estimate error rate for test data: ‘ ...
          sprintf(‘%6.4f‘out.errts(end))‘%‘]);      
    end;
  end;
  for i=1:length(nm)    % Print confusion matrix for training/test set
    if strcmp(nm(i)‘mtab‘)
       disp(‘ ‘);
       disp([‘        Confusion Matrix For Training Set‘]);
       k=size(out.mtab1);
       disp([‘       |‘sprintf(‘%6.0f‘(1:k))‘ |   err %‘]);
       disp([‘  -----|‘repmat([‘-‘]16*k)   ‘-|---------‘]);
       for i=1:k
          s=sum(out.mtab(i:));
          if s>0 err=100*(1-out.mtab(ii)/s);
          else   err=NaN; end;
       disp([sprintf(‘%6.0f‘i)‘ |‘ ...
            sprintf(‘%6.0f‘out.mtab(i:)) ‘ |‘ ...
            sprintf(‘%9.4f‘err)]);
       end;
    end;
    if strcmp(nm(i)‘mtabts‘)
       disp(‘ ‘);      
       disp([‘        Confusion Matrix For Test Set‘]);
       k=size(out.mtabts1);
       disp([‘       |‘sprintf(‘%6.0f‘(1:k))‘ |   err %‘]);
       disp([‘  -----|‘repmat([‘-‘]16*k)   ‘-|---------‘]);
       for i=1:k
          s=sum(out.mtabts(i:));
          if s>0 err=100*(1-out.mtabts(ii)/s);
          else   err=NaN; end;
       disp([sprintf(‘%6.0f‘i)‘ |‘ ...
            sprintf(‘%6.0f‘out.mtabts(i:)) ‘ |‘ ...
            sprintf(‘%9.4f‘err)]);
       end;
    end;
  end;
  disp(‘ ‘);

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     文件       97280  2020-08-03 12:56  ‘‘RandomForest\Installation.doc
     文件        2276  2020-08-03 12:56  ‘‘RandomForest\PrintRF.m
     文件         847  2020-08-03 12:56  ‘‘RandomForest\ReadMe
     文件       12564  2020-08-03 12:56  ‘‘RandomForest\RFClass.m
     文件       57344  2020-08-03 12:56  ‘‘RandomForest\RFClassification.dll
     文件        7959  2020-08-03 12:56  ‘‘RandomForest\RFReg.m
     文件       36864  2020-08-03 12:56  ‘‘RandomForest\RFRegression.dll
     文件       32726  2020-08-03 12:56  ‘‘RandomForest\Examples\boshouse.txt
     文件        1194  2020-08-03 12:56  ‘‘RandomForest\Examples\Example_Classification.m
     文件        1145  2020-08-03 12:56  ‘‘RandomForest\Examples\Example_Regression.m
     文件      236745  2020-08-03 12:56  ‘‘RandomForest\Examples\satimage_tes.txt
     文件      525830  2020-08-03 12:56  ‘‘RandomForest\Examples\satimage_tra.txt
     文件       60909  2020-08-03 12:56  ‘‘RandomForest\Fortran\RFClassification.f
     文件       24632  2020-08-03 12:56  ‘‘RandomForest\Fortran\RFRegression.f

评论

共有 条评论