数学建模—多元线性回归分析(+lasso回归的操作)

这篇具有很好参考价值的文章主要介绍了数学建模—多元线性回归分析(+lasso回归的操作)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

第一部分:回归分析的介绍

定义:回归分析是数据分析中最基础也是最重要的分析工具,绝大多数的数据分析问题,都可以使用回归的思想来解决。回归分析的人数就是,通过研究自变量X和因变量Y的相关关系,尝试去解释Y的形成机制,进而达到通过X去预测Y的目的。

常见的回归分析有五类:线性回归,0-1回归,定序回归,计数回归和生存回归,其划分的依据是因变量Y的类型。本讲我么你主要学习线性回归。

回归的思想:数学建模—多元线性回归分析(+lasso回归的操作),数学建模,Matlab,stata,数学建模,线性回归,回归,算法

第一个关键词:相关性数学建模—多元线性回归分析(+lasso回归的操作),数学建模,Matlab,stata,数学建模,线性回归,回归,算法

相关性!= 因果性,我们不能因为出两者有相关性就得出两者是由因果关系的。数学建模—多元线性回归分析(+lasso回归的操作),数学建模,Matlab,stata,数学建模,线性回归,回归,算法

第二个关键词:Y数学建模—多元线性回归分析(+lasso回归的操作),数学建模,Matlab,stata,数学建模,线性回归,回归,算法

第三个关键词是:X数学建模—多元线性回归分析(+lasso回归的操作),数学建模,Matlab,stata,数学建模,线性回归,回归,算法

0-1回归的例子(0-1回归的例子一般只有两个答案所以Y只有两个值来表示)

数学建模—多元线性回归分析(+lasso回归的操作),数学建模,Matlab,stata,数学建模,线性回归,回归,算法

回归分析的使命:数学建模—多元线性回归分析(+lasso回归的操作),数学建模,Matlab,stata,数学建模,线性回归,回归,算法

第二部分:不同数据类型的处理方法

 数学建模—多元线性回归分析(+lasso回归的操作),数学建模,Matlab,stata,数学建模,线性回归,回归,算法

数据的分类:

  1. 横截面数据

     数学建模—多元线性回归分析(+lasso回归的操作),数学建模,Matlab,stata,数学建模,线性回归,回归,算法

     2. 时间序列数据:数学建模—多元线性回归分析(+lasso回归的操作),数学建模,Matlab,stata,数学建模,线性回归,回归,算法

    3. 面板数据

  2. 数学建模—多元线性回归分析(+lasso回归的操作),数学建模,Matlab,stata,数学建模,线性回归,回归,算法

  3.          不同数据类型的处理方法:数学建模—多元线性回归分析(+lasso回归的操作),数学建模,Matlab,stata,数学建模,线性回归,回归,算法

  4. 第三部分:对于线性回归的理解以及生性问题的研究

    一元线性回归:

    存在扰动项:yi-y^i=yi-B^0-B^1xi数学建模—多元线性回归分析(+lasso回归的操作),数学建模,Matlab,stata,数学建模,线性回归,回归,算法

  5. 对于线性的理解:数学建模—多元线性回归分析(+lasso回归的操作),数学建模,Matlab,stata,数学建模,线性回归,回归,算法

    回归系数的解释:数学建模—多元线性回归分析(+lasso回归的操作),数学建模,Matlab,stata,数学建模,线性回归,回归,算法

    关于内生性的探究:

    扰动项与所有的自变量不存在相关性的时候则模型具有外生性。因此我们需要对模型的自变量与扰动项求其相关性。数学建模—多元线性回归分析(+lasso回归的操作),数学建模,Matlab,stata,数学建模,线性回归,回归,算法

    内生性的蒙特卡洛模拟: 数学建模—多元线性回归分析(+lasso回归的操作),数学建模,Matlab,stata,数学建模,线性回归,回归,算法

    Matlab实操:数学建模—多元线性回归分析(+lasso回归的操作),数学建模,Matlab,stata,数学建模,线性回归,回归,算法

     数学建模—多元线性回归分析(+lasso回归的操作),数学建模,Matlab,stata,数学建模,线性回归,回归,算法

    核心解释变量和控制变量

    对于我们想要求取的因素当作变量,其余的因素可以看作扰动项。数学建模—多元线性回归分析(+lasso回归的操作),数学建模,Matlab,stata,数学建模,线性回归,回归,算法

    第四部分:四种模型的解释,与你变量的设置以及交互项的解释

    回归系数的解释:数学建模—多元线性回归分析(+lasso回归的操作),数学建模,Matlab,stata,数学建模,线性回归,回归,算法

    什么时候取对数?数学建模—多元线性回归分析(+lasso回归的操作),数学建模,Matlab,stata,数学建模,线性回归,回归,算法

    四种模型的回归系数解释:数学建模—多元线性回归分析(+lasso回归的操作),数学建模,Matlab,stata,数学建模,线性回归,回归,算法

     数学建模—多元线性回归分析(+lasso回归的操作),数学建模,Matlab,stata,数学建模,线性回归,回归,算法

    特殊的自变量:虚拟变量、

    对于定性变量我们可以用数字来进行表示如女性为1,男性为0.

    数学建模—多元线性回归分析(+lasso回归的操作),数学建模,Matlab,stata,数学建模,线性回归,回归,算法

     数学建模—多元线性回归分析(+lasso回归的操作),数学建模,Matlab,stata,数学建模,线性回归,回归,算法

    多分类的虚拟变量:

    为了避免完全多重共线性的影响,引入的虚拟变量的个数一般是分类数减1.数学建模—多元线性回归分析(+lasso回归的操作),数学建模,Matlab,stata,数学建模,线性回归,回归,算法

    还有交互项(两个自变量相乘)的自变量数学建模—多元线性回归分析(+lasso回归的操作),数学建模,Matlab,stata,数学建模,线性回归,回归,算法

    第五部分:案列引入

    Stata软件的介绍:数学建模—多元线性回归分析(+lasso回归的操作),数学建模,Matlab,stata,数学建模,线性回归,回归,算法

    文件导入: 数学建模—多元线性回归分析(+lasso回归的操作),数学建模,Matlab,stata,数学建模,线性回归,回归,算法

     数学建模—多元线性回归分析(+lasso回归的操作),数学建模,Matlab,stata,数学建模,线性回归,回归,算法

    Stata中一些函数的作用:// 按键盘上的PageUp可以使用上一次输入的代码(Matlab中是上箭头)
    
    // 清除所有变量
    
    clear
    
    // 清屏 和 matlab的clc类似
    
    cls
    
    // 导入数据(其实是我们直接在界面上粘贴过来的,我们用鼠标点界面导入更方便 本条请删除后再复制到论文中,如果评委老师看到了就知道这不是你写的了)
    
    // import excel "C:\Users\hc_lzp\Desktop\数学建模视频录制\第7讲.多元回归分析\代码和例题数据\课堂中讲解的奶粉数据.xlsx", sheet("Sheet1") firstrow
    
    import excel "课堂中讲解的奶粉数据.xlsx", sheet("Sheet1") firstrow
    
    // 定量变量的描述性统计
    
    summarize 团购价元 评价量 商品毛重kg
    
    // 定性变量的频数分布,并得到相应字母开头的虚拟变量
    
    tabulate 配方,gen(A)
    
    tabulate 奶源产地 ,gen(B)
    
    tabulate 国产或进口 ,gen(C)
    
    tabulate 适用年龄岁 ,gen(D)
    
    tabulate 包装单位 ,gen(E)
    
    tabulate 分类 ,gen(F)
    
    tabulate 段位 ,gen(G)
    
    // 下面进行回归
    
    regress 评价量 团购价元 商品毛重kg
    
    // 下面的语句可帮助我们把回归结果保存在Word文档中
    
    // 在使用之前需要运行下面这个代码来安装下这个功能包(运行一次之后就可以注释掉了)
    
    // ssc install reg2docx, all replace
    
    // 如果安装出现connection timed out的错误,可以尝试换成手机热点联网,如果手机热点也不能下载,就不用这个命令吧,可以自己做一个回归结果表,如果觉得麻烦就直接把回归结果截图。
    
    est store m1
    
    reg2docx m1 using m1.docx, replace
    
    // *** p<0.01  ** p<0.05 * p<0.1
    
    
    
    // Stata会自动剔除多重共线性的变量
    
    regress 评价量 团购价元 商品毛重kg A1 A2 A3 B1 B2 B3 B4 B5 B6 B7 B8 B9 C1 C2 D1 D2 D3 D4 D5 E1 E2 E3 E4 F1 F2 G1 G2 G3 G4
    
    est store m2
    
    reg2docx m2 using m2.docx, replace
    
    
    
    // 得到标准化回归系数
    
    regress 评价量 团购价元 商品毛重kg, b
    
    
    
    // 画出残差图
    
    regress 评价量 团购价元 商品毛重kg A1 A2 A3 B1 B2 B3 B4 B5 B6 B7 B8 B9 C1 C2 D1 D2 D3 D4 D5 E1 E2 E3 E4 F1 F2 G1 G2 G3 G4
    
    rvfplot
    
    // 残差与拟合值的散点图
    
    graph export a1.png ,replace
    
    // 残差与自变量团购价的散点图
    
    rvpplot  团购价元
    
    graph export a2.png ,replace
    
    
    
    // 为什么评价量的拟合值会出现负数?
    
    // 描述性统计并给出分位数对应的数值
    
    summarize 评价量,d
    
    
    
    // 作评价量的概率密度估计图
    
    kdensity 评价量
    
    graph export a3.png ,replace
    
    
    
    // 异方差BP检验
    
    estat hettest ,rhs iid
    
    
    
    // 异方差怀特检验
    
    estat imtest,white
    
    
    
    // 使用OLS + 稳健的标准误
    
    regress 评价量 团购价元 商品毛重kg A1 A2 A3 B1 B2 B3 B4 B5 B6 B7 B8 B9 C1 C2 D1 D2 D3 D4 D5 E1 E2 E3 E4 F1 F2 G1 G2 G3 G4, r
    
    est store m3
    
    reg2docx m3 using m3.docx, replace
    
    
    
    // 计算VIF
    
    estat  vif
    
    
    
    // 逐步回归(一定要注意完全多重共线性的影响)
    
    // 向前逐步回归(后面的r表示稳健的标准误)
    
    stepwise reg 评价量 团购价元 商品毛重kg A1 A3 B1 B2 B3 B4 B5 B6 B7 B9 C1 D1 D2 D3 D4 E1 E2 E3 F1 G1 G2 G3,  r pe(0.05)
    
    // 向后逐步回归(后面的r表示稳健的标准误)
    
    stepwise reg 评价量 团购价元 商品毛重kg A1 A3 B1 B2 B3 B4 B5 B6 B7 B9 C1 D1 D2 D3 D4 E1 E2 E3 F1 G1 G2 G3,  r pr(0.05)
    
    // 向后逐步回归的同时使用标准化回归系数(在r后面跟上一个b即可)
    
    stepwise reg 评价量 团购价元 商品毛重kg A1 A3 B1 B2 B3 B4 B5 B6 B7 B9 C1 D1 D2 D3 D4 E1 E2 E3 F1 G1 G2 G3,  r b pr(0.05)
    
    
    
    
    
    // 补充语法 (大家不需要具体的去学Stata软件,掌握我课堂上教给大家的一些命令应对数学建模比赛就可以啦)
    
    // 事实上大家学好Excel,学好后应对90%的数据预处理问题都能解决
    
    // (1) 用已知变量生成新的变量
    
    generate lny = log(评价量) 
    
    generate price_square = 团购价元 ^2
    
    generate interaction_term = 团购价元*商品毛重kg
    
    
    
    // (2) 修改变量名称,因为用中文命名变量名称有时候可能容易出现未知Bug
    
    rename 团购价元 price

    数学建模—多元线性回归分析(+lasso回归的操作),数学建模,Matlab,stata,数学建模,线性回归,回归,算法

  6. 案列中的各指标介绍:数学建模—多元线性回归分析(+lasso回归的操作),数学建模,Matlab,stata,数学建模,线性回归,回归,算法

    Stata中的回归语句:数学建模—多元线性回归分析(+lasso回归的操作),数学建模,Matlab,stata,数学建模,线性回归,回归,算法

    表中的Model对应SSR,Residual对应SSE,Total对应SST

    Df(自由度)那一列分别是:k,n-k-1,n-1。

    看prob若<0.1(假设为90%)通过。

    拟合优度较低怎么办:数学建模—多元线性回归分析(+lasso回归的操作),数学建模,Matlab,stata,数学建模,线性回归,回归,算法

    拟合出现负值的原因:数学建模—多元线性回归分析(+lasso回归的操作),数学建模,Matlab,stata,数学建模,线性回归,回归,算法

    标准化回归系数:数学建模—多元线性回归分析(+lasso回归的操作),数学建模,Matlab,stata,数学建模,线性回归,回归,算法

    Stata标准化回归命令:数学建模—多元线性回归分析(+lasso回归的操作),数学建模,Matlab,stata,数学建模,线性回归,回归,算法

     数学建模—多元线性回归分析(+lasso回归的操作),数学建模,Matlab,stata,数学建模,线性回归,回归,算法

    第六部分异方差多重共线性以及交互项的解释:

    扰动项要满足的条件:、数学建模—多元线性回归分析(+lasso回归的操作),数学建模,Matlab,stata,数学建模,线性回归,回归,算法

    异方差以及如何解决:
    数学建模—多元线性回归分析(+lasso回归的操作),数学建模,Matlab,stata,数学建模,线性回归,回归,算法

    检验异方差:数学建模—多元线性回归分析(+lasso回归的操作),数学建模,Matlab,stata,数学建模,线性回归,回归,算法

    拟合值出现负数的原因

    拟合值分布不均匀,R^2过小,出现负数。

    数学建模—多元线性回归分析(+lasso回归的操作),数学建模,Matlab,stata,数学建模,线性回归,回归,算法

异方差的假设性检验:数学建模—多元线性回归分析(+lasso回归的操作),数学建模,Matlab,stata,数学建模,线性回归,回归,算法

BP检验的结果:

数学建模—多元线性回归分析(+lasso回归的操作),数学建模,Matlab,stata,数学建模,线性回归,回归,算法

怀特检验:数学建模—多元线性回归分析(+lasso回归的操作),数学建模,Matlab,stata,数学建模,线性回归,回归,算法

异方差的处理方法:数学建模—多元线性回归分析(+lasso回归的操作),数学建模,Matlab,stata,数学建模,线性回归,回归,算法

Stata中的OLS+稳健的标准误数学建模—多元线性回归分析(+lasso回归的操作),数学建模,Matlab,stata,数学建模,线性回归,回归,算法

多重共线性:数学建模—多元线性回归分析(+lasso回归的操作),数学建模,Matlab,stata,数学建模,线性回归,回归,算法

检验:数学建模—多元线性回归分析(+lasso回归的操作),数学建模,Matlab,stata,数学建模,线性回归,回归,算法

处理:数学建模—多元线性回归分析(+lasso回归的操作),数学建模,Matlab,stata,数学建模,线性回归,回归,算法

逐步回归分析数学建模—多元线性回归分析(+lasso回归的操作),数学建模,Matlab,stata,数学建模,线性回归,回归,算法

Stata中的逐步回归分析的实现:数学建模—多元线性回归分析(+lasso回归的操作),数学建模,Matlab,stata,数学建模,线性回归,回归,算法

 数学建模—多元线性回归分析(+lasso回归的操作),数学建模,Matlab,stata,数学建模,线性回归,回归,算法

 数学建模—多元线性回归分析(+lasso回归的操作),数学建模,Matlab,stata,数学建模,线性回归,回归,算法

 数学建模—多元线性回归分析(+lasso回归的操作),数学建模,Matlab,stata,数学建模,线性回归,回归,算法

完全多重共线性的错误:数学建模—多元线性回归分析(+lasso回归的操作),数学建模,Matlab,stata,数学建模,线性回归,回归,算法

更新:

Lasso回归

由于数据中的一些自变量会导致模型出现共线性,所以利用Losso回归将一些不重要的自变量剔除掉。数学建模—多元线性回归分析(+lasso回归的操作),数学建模,Matlab,stata,数学建模,线性回归,回归,算法

 文章来源地址https://www.toymoban.com/news/detail-642704.html

Losso回归的实现我们利用stata操作:数学建模—多元线性回归分析(+lasso回归的操作),数学建模,Matlab,stata,数学建模,线性回归,回归,算法

 

我们拿棉花产量估计作为案例数学建模—多元线性回归分析(+lasso回归的操作),数学建模,Matlab,stata,数学建模,线性回归,回归,算法

 

对于自变量量纲不同,需要标准化。

Stata中将数据标准化的函数为:egen 重命名 = 需要标准化的自变量。(本案例的量纲相同,只是举如何标准化例子)数学建模—多元线性回归分析(+lasso回归的操作),数学建模,Matlab,stata,数学建模,线性回归,回归,算法

 

如何用stata进行lasso回归呢?数学建模—多元线性回归分析(+lasso回归的操作),数学建模,Matlab,stata,数学建模,线性回归,回归,算法

 

最后stata会生成一个数据表,和一个表格。

数据表解析:

数据表中带*的表示λmin,MSPEmin。即我们最小调参数数学建模—多元线性回归分析(+lasso回归的操作),数学建模,Matlab,stata,数学建模,线性回归,回归,算法

 

表格分析:

Selected表示核心自变量

Lasso表示Lasso估计的x系数与估计值。

Past-est OLS:标准多元线性回归的x系数与估计值。

Lasso只帮助我们剔除可能会产生多重共线性的自变量xi,在生成多元线性回归模型时我们仍选择标准多元回归模型的参数。

注意:seed后随意数的不同,核心变量也会相对发生改变。数学建模—多元线性回归分析(+lasso回归的操作),数学建模,Matlab,stata,数学建模,线性回归,回归,算法

 

Lasso回归使用:帮助我们在对数据建立多元线性回归模型时筛选出不重要的变量。

步骤:1.判断自变量量纲是否一样,若不一样需要标准化预处理

2.对变量使用lasso回归,系数不为0的变量即要留下的重要变量。数学建模—多元线性回归分析(+lasso回归的操作),数学建模,Matlab,stata,数学建模,线性回归,回归,算法

 

 

到了这里,关于数学建模—多元线性回归分析(+lasso回归的操作)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【数学建模笔记】【第七讲】多元线性回归分析(二):虚拟变量的设置以及交互项的解释,以及基于Stata的普通回归与标准化回归分析实例

    温馨提示: 本文共有9683字,阅读并理解全文需要半小时左右 书接上文,上文谈到内生性的解决之后,我们对回归问题的探究还没有完。 比如下面这个问题: 我们说线性回归他的表达式可以是广义的,可以含有二次项,可以含有对数项,那么含有对数项的模型中的β怎么解释

    2023年04月25日
    浏览(55)
  • 数学建模matlab实现多元线性回归

            多元线性回归是统计学中一种常用的回归分析方法,用于研究多个自变量对一个连续因变量的关系。它基于线性假设,假设因变量与自变量之间存在线性关系。         在多元线性回归中,我们考虑多个自变量的影响,并试图找到一条最佳拟合直线(或超平面

    2024年02月02日
    浏览(48)
  • 【数学建模】多元线性回归(Python&Matlab代码实现)

    目录 1 概述 2 算例1 2.1 算例 2.2 Python代码实现  2.3 结果 3 算例2  3.1 算例 3.2 Python代码 3.3 结果 4 算例3 4.1 算例 4.2 Python代码 4.3 结果 5 算例4——Matlab代码实现 5.1 算例 5.2 Matlab代码实现 5.3 结果  6 写在最后 一元线性回归模型研究的是一个因变量与一个自变量之间呈直线趋势的

    2023年04月15日
    浏览(48)
  • 数学建模【基于清风】:相关系数法与多元线性回归

    个人理解为:如果当X增加时,Y趋向于减少,斯皮尔曼,皮尔逊相关系数则为负。斯皮尔曼,皮尔逊相关系数为零表明当X增加时Y没有任何趋向性。当X和Y越来越接近完全的单调相关时,斯皮尔曼相关系数会在绝对值上增加。 如 但是,对于相关系数来说,相关系数的大小与其

    2024年02月08日
    浏览(58)
  • 数学建模学习:岭回归和lasso回归

    线性回归 在多元线性回归模型中,估计回归系数使用的是OLS,并在最后讨论异方差和多重共线性对模型的影响。事实上,回归中自变量的选择大有门道,变量过多可能会导致多重共线性问题导致回归系数不显著,甚至造成OLS估计失效。 岭回归和lasso回归在OLS回归模型的损失函

    2024年02月08日
    浏览(50)
  • 数学建模常用模型(五):多元回归模型

    由于客观事物内部规律的复杂性及人们认识程度的限制,无法分析实际对象内在的因果关系,建立合乎机理规律的数学模型。所以在遇到有些无法用机理分析建立数学模型的时候,通常采取搜集大量数据的办法,基于对数据的统计分析去建立模型,其中用途最为广泛的一类随

    2024年02月13日
    浏览(44)
  • 多元线性回归-Lasso

    目录 1.Lasso与多重共线性 2. Lasso的核心作用:特征选择 3. 选取最佳的正则化参数取值          Lasso全称最小绝对收缩和选择算子(Least absolute shrinkage and selection operator),由于这个名称过于复杂所以简称为Lasso,和岭回归一样,Lasso是用来作用于多重共线性的算法,不过Lass

    2024年02月16日
    浏览(49)
  • 数学建模-线性回归

    回归分析: 通过研究自变量X和因变量Y的相关关系,尝试去解释Y的形成机制,进而达到通过X去预测Y的目的。 本次主要学习线性回归。(划分依据是因变量Y的类型) ps. other 0-1回归,定序回归,计数回归,生存回归 a. : 相关性 , Y , X 相关性 != 因果性 Y 是需

    2023年04月09日
    浏览(47)
  • 数学建模matlab实现一元线性回归

            一元线性回归是统计学中用于建立一个自变量(或称为解释变量、预测变量)和一个因变量(或称为响应变量、被预测变量)之间的线性关系的回归模型。它假设两个变量之间存在一个直线关系,通过拟合这条直线,可以用自变量的值来预测因变量的值。     

    2024年01月21日
    浏览(51)
  • 数学建模|回归分析

    人们关心的 因变量 受 自变量 的关联性(非因果性)的影响,并且存在众多随机因素,难以用机理分析方法找出它们之间的关系;需要建立这些变量的数学模型,使得 能够根据自变量的数值预测因变量的大小,或者解释因变量的变化。 换句话说:回归分析是一种类相关性分析

    2024年02月04日
    浏览(50)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包