当前位置: 首页 > news >正文

数学建模——线性回归模型

目录

1.线性回归模型的具体步骤和要点: 

1.收集数据:

2.探索性数据分析:

3.选择模型:

4.拟合模型:

5.评估模型:

1.R平方(R-squared):

2.调整R平方(Adjusted R-squared):

3.残差分析:

4.方差膨胀因子(VIF):

6.解释结果:

7.预测与应用:

8.检验假设:

2.线性回归模型公式分析包括以下几个方面:

​编辑

3.模型代码实现

1.代码_python

2.图形


1.线性回归模型的具体步骤和要点: 

1.收集数据

首先,需要收集与研究问题相关的数据。这些数据应包括一个或多个自变量(特征)和一个因变量(目标)。

2.探索性数据分析

在建立模型之前,通常会对数据进行探索性分析,包括可视化和描述性统计分析,以了解数据的分布、相关性和异常值等情况。

3.选择模型

根据问题的特点选择合适的线性回归模型。如果只有一个自变量,可以使用简单线性回归模型;如果有多个自变量,可以使用多元线性回归模型。

4.拟合模型

利用最小二乘法或其他拟合方法来估计模型的参数。最小二乘法是一种常用的方法,它通过最小化观测值与模型预测值之间的残差平方和来确定参数。

5.评估模型

评估模型的好坏以及对数据的拟合程度。常用的评估指标包括R平方、调整R平方、均方误差等。

1.R平方(R-squared)

R平方是一个衡量模型拟合优度的指标,表示因变量的变异中能被自变量解释的比例。R平方越接近1,说明模型对数据的拟合越好。

2.调整R平方(Adjusted R-squared)

调整R平方考虑了自变量的数量和样本量,相比于R平方更可靠。

3.残差分析

分析残差是否呈现出随机分布,检查是否满足模型假设。

4.方差膨胀因子(VIF)

用于检测自变量之间的多重共线性问题。

6.解释结果

分析模型的参数估计,理解自变量与因变量之间的关系。通过检查参数的符号和大小,可以了解自变量对因变量的影响方向和程度。

7.预测与应用

利用拟合好的模型进行预测或者应用。可以使用模型对新的数据进行预测,也可以利用模型进行决策支持或政策制定等。

8.检验假设

在应用模型时,需要检验模型的假设是否成立,例如线性关系、常数方差、独立误差等。如果假设不成立,可能需要对模型进行修正或者选择其他的建模方法。

2.线性回归模型公式分析包括以下几个方面:

3.模型代码实现

具体的需要根据具体数据磨合 

1.代码_python

import numpy as np
import statsmodels.api as sm
import matplotlib.pyplot as plt# 准备数据
np.random.seed(0)
X = np.random.rand(100, 2)  # 两个自变量
y = 2 * X[:,0] + 3 * X[:,1] + np.random.randn(100)  # 因变量# 添加常数项
X = sm.add_constant(X)# 拟合线性回归模型
model = sm.OLS(y, X).fit()# 绘制残差图
plt.figure(figsize=(12, 6))
plt.subplot(1, 2, 1)
plt.scatter(model.fittedvalues, model.resid)
plt.xlabel('Fitted values')
plt.ylabel('Residuals')
plt.title('Residuals vs Fitted')# 绘制预测值与观测值的散点图
plt.subplot(1, 2, 2)
plt.scatter(model.fittedvalues, y)
plt.xlabel('Fitted values')
plt.ylabel('Observed values')
plt.title('Observed vs Fitted')# 添加拟合直线
plt.plot(model.fittedvalues, model.fittedvalues, color='red')plt.tight_layout()
plt.show()# 绘制参数估计的置信区间
plt.figure(figsize=(8, 6))
model_params = model.params
conf_int = model.conf_int()
plt.errorbar(model_params.index, model_params, yerr=model_params - conf_int[:, 0], fmt='o')
plt.axhline(0, color='red', linestyle='--')
plt.xlabel('Parameters')
plt.ylabel('Estimate')
plt.title('Parameter Estimates with Confidence Intervals')
plt.xticks(rotation=45)
plt.show()

2.图形

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • Apache Doris 基础 -- 数据表设计(数据模型)
  • 充电器快充协议与PW6606快充电压诱骗芯片
  • Linux完整版命令大全(二十一)
  • 前端面试题12-22
  • 惯性测量单元M-G370系列广泛用于工业系统各个领域
  • 工控屏(触摸屏)怎么连接电脑
  • 首发AI新功能 贝锐向日葵远程控制IT精英版助力IT运维
  • Oracle dblink 发现Network 等待事件的分析 enq: KO - fast object checkpoint
  • 【权威出版】2024年电气工程与传感检测技术国际会议(EESDT 2024)
  • 从输入URL到页面加载的全过程
  • 书籍学习|基于SprinBoot+vue的书籍学习平台(源码+数据库+文档)
  • mysql存储地理信息的方法
  • jmeter之MD5加密接口请求教程
  • C语言-atoi()库函数的模拟实现
  • 摩尔投票法——代码实现及注释(力扣169题:找出列表中多数元素)
  • Angular 2 DI - IoC DI - 1
  • AngularJS指令开发(1)——参数详解
  • Django 博客开发教程 16 - 统计文章阅读量
  • iOS小技巧之UIImagePickerController实现头像选择
  • Javascript Math对象和Date对象常用方法详解
  • Java小白进阶笔记(3)-初级面向对象
  • JS基础之数据类型、对象、原型、原型链、继承
  • Mysql数据库的条件查询语句
  • orm2 中文文档 3.1 模型属性
  • Promise面试题2实现异步串行执行
  • 阿里云应用高可用服务公测发布
  • 可能是历史上最全的CC0版权可以免费商用的图片网站
  • 聊一聊前端的监控
  • 使用docker-compose进行多节点部署
  • [地铁译]使用SSD缓存应用数据——Moneta项目: 低成本优化的下一代EVCache ...
  • 国内开源镜像站点
  • 通过调用文摘列表API获取文摘
  • 移动端高清、多屏适配方案
  • ​ 轻量应用服务器:亚马逊云科技打造全球领先的云计算解决方案
  • ​卜东波研究员:高观点下的少儿计算思维
  • ​软考-高级-系统架构设计师教程(清华第2版)【第12章 信息系统架构设计理论与实践(P420~465)-思维导图】​
  • ​一、什么是射频识别?二、射频识别系统组成及工作原理三、射频识别系统分类四、RFID与物联网​
  • # 日期待t_最值得等的SUV奥迪Q9:空间比MPV还大,或搭4.0T,香
  • #DBA杂记1
  • (1)(1.8) MSP(MultiWii 串行协议)(4.1 版)
  • (16)Reactor的测试——响应式Spring的道法术器
  • (SpringBoot)第二章:Spring创建和使用
  • (第二周)效能测试
  • (蓝桥杯每日一题)love
  • (四)Linux Shell编程——输入输出重定向
  • (算法)N皇后问题
  • (转)如何上传第三方jar包至Maven私服让maven项目可以使用第三方jar包
  • ./configure、make、make install 命令
  • .JPG图片,各种压缩率下的文件尺寸
  • .NET 8.0 中有哪些新的变化?
  • .NET delegate 委托 、 Event 事件,接口回调
  • .NET Framework与.NET Framework SDK有什么不同?
  • .NET LINQ 通常分 Syntax Query 和Syntax Method
  • .net 受管制代码
  • .Net6 Api Swagger配置