均方根误差MATLAB代码
时间: 2024-09-23 08:00:51 浏览: 58
在MATLAB中,计算均方根误差(Root Mean Squared Error, RMSE)通常用于评估模型预测结果与真实数据之间的差距。下面是一个简单的函数,它接受一组预测值(`predicted_values`)和对应的真实值(`actual_values`),并计算RMSE:
```matlab
function rmse = calculate_rmse(predicted_values, actual_values)
% 检查输入是否为空或者维度不匹配
if isempty(predicted_values) || isempty(actual_values) || ~isequal(size(predicted_values), size(actual_values))
error('Input arrays must be non-empty and have the same dimensions.');
end
% 计算每个元素的平方误差
squared_errors = (predicted_values - actual_values).^2;
% 计算平均平方误差(MSE)
mse = mean(squared_errors);
% 取平方根得到RMSE
rmse = sqrt(mse);
end
```
使用这个函数的方式如下:
```matlab
predicted = [1, 2, 3, 4]; % 预测值
actual = [1.5, 2.8, 3.1, 3.9]; % 真实值
rmse_value = calculate_rmse(predicted, actual);
disp(['RMSE: ', num2str(rmse_value)]);
```
阅读全文