matlab线性回归代码
以下是一个简单的 MATLAB 线性回归代码示例:
% 导入数据
data = load(‘data.txt’);
X = data(:, 1); % 特征
y = data(:, 2); % 目标变量
% 绘制散点图
scatter(X, y);
xlabel(‘特征’);
ylabel(‘目标变量’);
% 添加偏置项
X = [ones(length(X), 1), X];
% 计算参数
theta = (X’ * X) \ (X’ * y);
% 绘制拟合直线
hold on;
plot(X(:, 2), X * theta, ‘r’);
legend('数据’, ‘拟合直线’);
% 输出参数
fprintf('theta0 = %f\n’, theta(1));
fprintf('theta1 = %f\n’, theta(2));
以上代码实现了简单的线性回归,包括导入数据、绘制散点图、添加偏置项、计算参数、绘制拟合直线和输出参数等步骤。
具体来说,代码首先导入数据,其中 X 表示特征,y 表示目标变量。然后,代码绘制散点图,以便可视化数据。接着,代码添加偏置项,即在特征向量的第一列添加一列全为 1 的向量,以便计算截距。然后,代码计算参数 theta,即使用最小二乘法求解线性回归的参数。最后,代码绘制拟合直线,并输出参数 theta 的值。
需要注意的是,以上代码实现了简单的线性回归,即只有一个特征。如果有多个特征,需要使用多元线性回归。此外,还需要对数据进行预处理,例如特征缩放、特征选择等,以提高模型的性能。