预测模型:MATLAB线性回归
1. 线性回归模型的基本原理
线性回归是统计学中用来预测连续变量之间关系的一种方法。它假设变量之间存在线性关系,可以通过一个或多个自变量(预测变量)来预测因变量(响应变量)的值。基本的线性回归模型可以表示为:
y
=
β
0
+
β
1
x
1
+
β
2
x
2
+
.
.
.
+
β
n
x
n
+
ϵ
y = \beta_0 + \beta_1x_1 + \beta_2x_2 + ... + \beta_nx_n + \epsilon
y=β0+β1x1+β2x2+...+βnxn+ϵ
其中,
y
y
y是因变量,
x
1
,
x
2
,
.
.
.
,
x
n
x_1, x_2, ..., x_n
x1,x2,...,xn是自变量,
β
0
\beta_0
β0是截距项,
β
1
,
β
2
,
.
.
.
,
β
n
\beta_1, \beta_2, ..., \beta_n
β1,β2,...,βn是回归系数,
ϵ
\epsilon
ϵ是误差项。
2. MATLAB中线性回归的求解
MATLAB提供了多种工具和函数来进行线性回归分析,包括fitlm
函数用于创建线性回归模型,以及regress
函数等。fitlm
提供了一个方便的接口来拟合线性模型,自动计算回归系数,并提供了估计的统计信息。
3. 实例分析
假设我们有一组数据,包含了一家公司的广告支出和相应的销售额。我们想要建立一个模型,预测根据广告支出预测销售额。
数据:
广告支出(万) | 销售额(万) |
---|---|
1.2 | 58 |
2.1 | 75 |
0.9 | 49 |
1.8 | 72 |
1.5 | 65 |
2.5 | 90 |
使用MATLAB进行线性回归分析:
clc,clear
% 加载数据
X = [1.2, 2.1, 0.9, 1.8, 1.5 , 2.5]; % 广告支出
Y = [58, 75, 49, 72, 65, 90]; % 销售额
% 线性回归分析
mdl = fitlm(X, Y);
disp(mdl)
% 绘制数据点
figure; % 创建一个新的图形窗口
scatter(X, Y, 'filled'); % 绘制散点图
hold on; % 保持图形,以便在同一图形上添加回归线
% 计算回归线
b = mdl.Coefficients.Estimate; % 获取回归系数
refX = min(X):0.01:max(X); % 生成一个参考X值的向量,用于绘制回归线
refY = b(1) + b(2)*refX; % 计算对应的Y值
% 绘制回归线
plot(refX, refY, 'r', 'LineWidth', 2); % 绘制红色的回归线
% 标题和轴标签
title('广告支出与销售额的线性回归分析');
xlabel('广告支出(万)');
ylabel('销售额(万)');
% 显示图例
legend('观测数据', '回归线', 'Location', 'best');
hold off; % 释放图形
4. 求解结果
在代码中,fitlm
函数会输出一个线性模型对象,其中包含了模型的详细统计信息,如回归系数的估计值、
R
2
R^2
R2值(解释变量对响应变量的解释程度)、p值等,可以用来评估模型的质量和预测能力。
具体结果如下:
线性回归图如下:
通过线性回归模型,我们可以预测在不同的广告支出下可能获得的销售额,这对于资源分配和营销策略的制定极为重要。线性回归模型是最简单的预测模型之一,后面还会介绍其他的回归预测模型。