因需要多次求取多种误差精度,且获得了直接保存矩阵的好函数
%% 循环读取数据评定误差
clc
clear
% 加载文件
alll = load('data_path');
%分别读取列,获取对应精度
for ii = 4:size(alll,2)
ii
rmsealll(ii-3) = sqrt(mean((alll(:,3)-alll(:,ii)).^2)); %rmse
Ralll(ii-3) = corr(alll(:,3),alll(:,ii), 'type', 'Pearson'); %相关系数
maealll(ii-3) = mean(abs(alll(:,3)-alll(:,ii))); %平均绝对误差
xd_error(ii-3) = mean((abs(alll(:,ii)-(alll(:,3))))./abs(alll(:,3))); %测量值3,实际值1,相对误差=(3-1)/1*100%.
std_alll(ii-3) = std(alll(:,3)-alll(:,ii)); %标准差
end
max_alll = max(alll); % 最大值
min_alll = min(alll); % 最小值
mean_alll = mean(alll); % 均值
% 排列出所有精度结果
error_alll = [max_alll(4:end);min_alll(4:end);mean_alll(4:end);rmsealll;xd_error;Ralll;maealll;std_alll];
直接将矩阵导入到文本中
writematrix(ss,newfile,'Delimiter','tab'); %超级方便的函数