多元线性回归Matlab代码
时间: 2023-06-23 15:53:12 浏览: 94
多元线性回归MATLAB代码
以下是一个简单的多元线性回归Matlab代码示例:
```matlab
% 多元线性回归示例
% 导入数据
data = load('data.txt');
X = data(:, 1:2); % 特征矩阵
y = data(:, 3); % 目标向量
% 标准化特征矩阵
[X, mu, sigma] = featureNormalize(X);
% 添加截距项
X = [ones(size(X, 1), 1) X];
% 初始化参数
theta = zeros(size(X, 2), 1);
% 设置梯度下降参数
alpha = 0.01;
num_iters = 400;
% 运行梯度下降算法
[theta, J_history] = gradientDescentMulti(X, y, theta, alpha, num_iters);
% 画出代价函数J的收敛曲线
plot(1:numel(J_history), J_history, '-b', 'LineWidth', 2);
xlabel('迭代次数');
ylabel('代价函数J的值');
% 预测价格
price = 0; % 预测一个新房子的价格
price = ([1, (price - mu) ./ sigma] * theta);
fprintf(['预测价格:%f\n'], price);
```
其中,`featureNormalize`、`gradientDescentMulti`等函数需要自己定义实现。
阅读全文