- 向前/后逐步回归筛选自变量
- 检验自变量之间是否多重共线性(计算VIF)
- 内生性、核心变量与解释变量
- 虚拟变量,个数 = 分类数 - 1,否则有多重共线性
- stata软件
- 回归模型假设检验、回归系数假设检验与解释
- 自变量对因变量的影响程度:标准化回归系数
- 检验异方差(原始数据分布极其不均匀时可能有),作残差与拟合值、自变量图,波动很大
目录
回归的思想
回归分析的任务
多元线性回归需要的数据
数据类型
数据来源网站
一元线性回归
遗漏变量导致的内生性
核心解释变量、控制变量
回归系数的解释
含对数的模型
虚拟变量
含有交互项的自变量
回归实例
Stata 数据的描述性统计
定量数据
定性数据
Stata 进行回归计算
计算出拟合优度很低怎么办?
Stata 加入虚拟变量的回归
标准化回归系数
扰动项必须是球型扰动项
异方差
异方差产生原因
异方差的后果
检验异方差
通过作图观察
BP假设检验
怀特假设检验
异方差的处理方法
OLS+稳健标准误
多重共线性
多重共线性引起的问题
检验多重共线性
处理方法
逐步回归分析
回归的思想
五类常见的回归分析:划分依据是因变量Y的类型
生存变量:对于活着的事物不能知道其寿命,所以以当前寿命作为寿命,截断数据
回归分析的任务
通过研究自变量 X 和因变量 Y 的相关关系,解释Y的形成机制,通过X预测Y
- 变量选择:识别哪些X变量与Y有关
- 判断X与Y的相关性方向:正/负
- 估计X的权重(回归系数,即自变量的系数),即X对Y的影响有多大
多元线性回归需要的数据
数据类型
- 横截面数据:在某一时点收集的不同对象的数据(全国各省份2018年GDP的数据)
- 时间序列数据:对同一对象在不同时间连续观察所取得的数据(中国历年来GDP的数据)
- 面板数据:横截面数据与时间序列数据综合起来的一种数据资源(2008‐2018年,我国各省份GDP的数据)
(前两种常用)
数据来源网站
宏观数据(国家等大的层面)、微观数据(企业、个人等)
一元线性回归
遗漏变量导致的内生性
回归模型具有外生性:误差项 μ 和所有的自变量不相关
回归模型具有内生性:误差项 μ 和自变量有相关性(即 μ 中包含了所有与y相关,但未添加到回归模型中的变量,如果这些变量和已经添加的自变量相关,则存在内生性),内生性导致回归系数不准确(不满足无偏性、一致性)
核心解释变量、控制变量
严格外生性,即无内生性(no endogeneity),要求所有解释变量均与扰动项不相关,很难满足,因此弱化这个条件:将变量分为核心解释变量、控制变量
-
核心解释变量:问题中 最感兴趣的变量
-
控制变量:并无太大兴趣的变量
在实际应用中,只要保证核心解释变量与𝝁不相关即可
回归系数的解释
y = kx + b
- b:x 为0时,y 的平均...(要说平均,否则太绝对 并非所有样本都是这个值
- k:x 每增加一个单位,y 的平均...增加 k
- 有多个自变量:在保持其他变量不变的情况下
含对数的模型
取对数意味着原被解释变量对解释变量的弹性,即百分比的变化而不是数值的变化
对于什么时候取对数还没有固定的规则,但是有一些经验法则:
(1)与市场价值相关的,例如,价格、销售额、工资等都可以取对数;
(2)以年度量的变量,如受教育年限、工作经历等通常不取对数;
(3)比例变量,如失业率、参与率等,两者均可;
(4)变量取值必须是非负数,包含0则可对y取对数ln(1+y);
- 一元线性回归:𝑦 = 𝑎 + 𝑏𝑥 + 𝜇,𝑥 每增加1个单位,𝑦 平均变化 𝑏 个单位
- 双对数模型:𝑙𝑛𝑦 = 𝑎 + 𝑏𝑙𝑛𝑥 + 𝜇,𝑥 每增加1%,𝑦 平均变化 𝑏 %
- 半对数模型:𝑦 = 𝑎 + 𝑏𝑙𝑛𝑥 + 𝜇,𝑥 每增加1%,𝑦 平均变化 𝑏 /100个单位
- 半对数模型:𝑙𝑛𝑦 = 𝑎 + 𝑏𝑥 + 𝜇,𝑥 每增加1个单位,𝑦 平均变化(100 𝑏 )%(后面跟百分号)
虚拟变量
自变量中,含有 性别、地区 等定性的变量,转化为定量变量
多分类的虚拟变量:如 31 个省份,则是某个省 则该省虚拟变量取 1 其他取 0
避免完全多重共线性,虚拟变量个数一般是 分类数 - 1
含有交互项的自变量
求偏导,解释交互项前面的回归系数
回归实例
注意:
- 数据尽量不要做处理(如归一化处理),否则不好分析回归结果
- 计算后要告知回归系数及其显著性
- 不要随意把模型修改为高次,虽然高次、自变量多的模型拟合优度会大,但是不能只追求拟合优度大而不解释为什么修改模型
使用 Stata 软件、excel数据透视表(在插入 - 透视表中)进行回归分析和绘图等
Stata 数据的描述性统计
定量数据
使用命令:summarize 缩写 sum
定性数据
命令:tabulate 简写 tab
可在论文中写出如下表格:
Stata 进行回归计算
回归计算用于计算出自变量与 y 的关系,并进行解释
命令:regress 简写 reg
需要做的事情(上面两个表):
首先检验模型是否通过联合显著性检验:
原假设:所有回归系数与 0 没有显著差异
利用 F 分布求出 p 值:p < 0.05 则拒绝原假设,即认为回归系数与 0 有显著差异 模型有意义
构造 F 分布需要求 SSR、SSE、SST、自由度
求出拟合优度 R^2 和调整后的拟合优度 Adj R^2,一般用 Adj R^2
再检验回归系数的显著性:
原假设:回归系数 βi 与 0 没有显著差异
利用 t 分布求出 p 值:p < 0.05 则拒绝原假设,回归系数与 0 有显著差异 回归系数有意义
构造 t 分布需要求 StsErr,用回归系数除以 StdErr 得到 t 统计量、
做成下表:(看视频步骤)
计算出拟合优度很低怎么办?
Stata 加入虚拟变量的回归
解决完全多重共线性问题:虚拟变量数目 = 分类数 - 1,减去的那个作为对照组,stata 为我们选择去掉了完全多重共线性的变量(实际上是任意去除)
标准化回归系数
用于判断哪个自变量对 y 影响大,即自变量的重要程度
命令:在 regress 后加上 beta
扰动项必须是球型扰动项
球型扰动项:满足“同方差”和“无自相关”两个条件
横截面数据容易出现异方差的问题,时间序列数据容易出现自相关的问题
异方差
参考:计量经济学导论05:异方差 - 这个XD很懒 - 博客园
异方差:指的是对于不同的样本点,随机干扰项的方差不再是常数,而是互不相同的。即如果 μ 的方差随 x 变化,那么称随机干扰项是具有异方差的。
异方差产生原因
1. 模型中遗漏了某些重要的解释变量(同样导致内生性)
2. 数据的测量误差
3. 截面数据较时间序列数据更容易产生异方差:这是因为同一时点不同对象的差异,一般说来会大于同一对象不同时间的差异;不过在时间序列数据发生较大变化的情况下,也可能出现比截面数据更严重的异方差
4. 一个或多个回归解释变量的分布是偏态(skewness):例如:收入、财富和受教育水平的总体分布都是不均匀的分布,具体体现在大部分的收入和财富被少数人所拥有,受高等教育的精英也是少数等等
5. 模型的函数形式存在设定误差
6. 异常值
异方差的后果
-
不改变无偏性和一致性:参数估计的无偏性仅依赖于基本假定中的零均值假定,所以异方差的存在对无偏性的成立没有影响。
-
参数估计量非有效:同方差假定是 OLS 估计方差最小的前提条件,所以随机误差项是异方差时,将不能再保证最小二乘估计的方差最小
OLS + 文件的标准误差方法的原理:OLS估计出来的回归系数仍然无偏、一致,可以使用;异方差只是让回归系数不可假设检验,因为假设检验的 t 分布需要 回归系数 除以 标准误差,所以使用稳健的标准误,则可以构造 t 统计量,从而进行假设检验
检验异方差
通过作图观察
通过画残差与拟合值、自变量的散点图判断,若有异方差,则数据波动大
Stata代码
在回归结束后运行命令:
rvfplot (画残差与拟合值的散点图)
rvpplot x (画残差与自变量x的散点图)
原始数据分布极不均匀导致不该为负的拟合值为负:
BP假设检验
两种假设检验原假设都是:扰动项不存在异方差,则 p < α,拒绝假设,即存在异方差
Stata命令(在回归结束后使用):
estat hettest ,rhs iid
怀特假设检验
Stata命令(在回归结束后使用):
estat imtest,white
异方差的处理方法
OLS+稳健标准误
Stata:
regress y x1 x2 … xk,robust
多重共线性
多重共线性引起的问题
- 回归模型拟合优度大、F检验显著,但是单个系数 t 检验不显著,或 系数估计值不合理、符号不对
- 增减解释变量,系数估计值变化大
a. 系数 β1 估计值的现实意义下降,出现反常值的可能性更大(比较常见的是系数估计值变小)
b. β1 方差的估计量变大,所以更难得到显著结果
c. β1 对数据变动更加敏感,这是因为 x1 遭受的信息量损失太大,所以数据上较小的变动已经能带来较大的影响
和多重共线性完全无关的其他完全不会受到影响(系数估计量、方差估计量都不受影响),并且模型的拟合情况以及预测值都不会受到影响(预测值的置信区间会受影响)
区分:
- 内生性:误差项 μ 和自变量有相关性(即 μ 中包含了所有与y相关,但未添加到回归模型中的变量,如果这些变量和已经添加的自变量相关,则存在内生性)
- 多重共线性:解释变量之间的相关性
检验多重共线性
使用 Stata 计算方差膨胀因子VIF,思想是把自变量拿出一个作为因变量,计算剩余自变量与该因变量的拟合优度
VIF越大,VIF > 10,该作为因变量的自变量与其余自变量相关性越大,即多重共线性很大
Stata计算各自变量VIF的命令(在回归结束后使用):
estat vif
处理方法
如果你所关注的是模型的拟合或者预测效果,多重共线性问题对模型的拟合值和预测值是没有影响的(当然对置信区间是有影响),那么你不用太考虑这个问题。
如果你关注的是每个解释变量各自对被解释变量的影响(在经济学中称为“结构分析”),那你也没有理由因为多重共线性问题而改变模型的结构,比如把哪个变量删掉
如果因为多重共线性导致某个(些)变量不显著了,增大样本量来解决,但一般还是直接删除这个变量
逐步回归分析
向前(一个个加) / 向后(一个个剔除,更好)
// 向前逐步回归Forward selection:
stepwise regress y x1 x2 … xk, pe(#1)
//(显著才加入模型中).#1处填入显著性水平 p<α就选入
// 向后逐步回归Backward elimination:
stepwise regress y x1 x2 … xk, pr(#2)
//(不显著就剔除出模型). p<α就不删除
// 如果你觉得筛选后的变量仍很多,你可以减小#1或者#2
// 如果你觉得筛选后的变量太少了,你可以增加#1或者#2
文章来源:https://www.toymoban.com/news/detail-455852.html
文章来源地址https://www.toymoban.com/news/detail-455852.html
到了这里,关于数学建模:9 多元线性回归分析的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!