stata如何做多元线性回归模型(多元线性回归stata)
回归分为解释性回归和预测性回归
预测型回归对预测精度要求较高,可以在模型中添加平方项和交互项甚至高次项进行改进模型,不一定只有线性项
但是加入的自变量如果过多,比如4个变量,再加上他们的平方项,8个变量对于小样本的话很容易出现过拟合,和NN很像,对这些样本的表示已经特别完备了,预测能力很好,但是对于样本外的数据预测效果很差。
因变量如果是0-1变量则为0-1回归
回归的思想,任务,使命,分类因变量y可以分为
所以回归可以分类为
下面这个0-1回归的例子中的因变量自变量都是0-1变量
回归就是拟合的后续回归就是拟合的后续回归就是拟合的后续
但是多元线性回归指定了函数形式是多元线性函数,拟合的时候不能随便采用别的多项式函数或其他自定义函数
用最小二乘法计算出公式(函数的形式可以由经验、先验知识或对数据的直观观察决定,或者直接使用多项式)里的系数,拟合就完成了,但是回归的工作还没有结束,还需要去研究这些系数(这个公式)的可信度,每个系数对因变量的影响,因为回归分析认为真正的拟合系数应该是一个随机变量而非确值,拟合用最小二乘求出来的这些系数只是对真正系数的一个点估计,所以有必要继续去研究区间估计或者假设检验。总之,拟合只是求出一条曲线能反映数据的趋势就行了,但是回归的要求是更高的更精确的。
对拟合得到的系数进行进一步估计和检验
解释y的形成机制就是通过建立x,y的数学关系式
感觉相关分析就是回归分析的前两步,但是使用的方法不是通过相关
逐步回归后面讲,筛选最有效的几个变量,剔除不重要的变量,简化回归模型
线性回归一定只能用于有线性关系的变量吗
首先必须明确,多元线性回归中的“线性”是一个假定。是需要去检验的!
非线性关系,如对数关系也是可以用线性回归的,只要先化成这个形式
数据的预处理主要是注意异常值,异常值,离群点对回归模型的影响是非常大的
可以在excel中求出变量的对数项,平方项,交互项(x1*x2),然后用spss画散点图看看有没有线性关系
数据的分类
用回归找出所有指标中最重要的几个
那么受到启发的我们就可以用回归去找和患某病最相关的基因位点(2016年研究生国赛B题)
数据的标准化处理
不管干啥,主成分分析啦,回归啦,要想消除量纲的影响,就要对数据进行标准化处理,这算数据预处理的内容
最小二乘法拟合一元线性回归方程的几个结论
回归系数的解释
多元线性回归模型中的回归系数
遗漏变量会造成内生性(扰动项和变量相关)
多元线性回归一定要避免内生性,使得模型具有外生性
所以如果要使用多元线性回归,是一定要检验模型是否具有外生性的,这可以通过检验每一元变量和扰动项的相关系数
弱化完全无内生性的条件
虚拟变量
虚拟变量对于有定性变量的问题是非常重要的,很多现实问题都有定性变量,并且定性变量一般还比定量变量多呢
有的时候让你研究工资的高低是否和性别有关,贷款申请成功与否是否和申请人所处地域有关,你一般只能想到做相关性分析,算相关系数啥的,但是其实也可以通过设置虚拟变量进行回归分析,获得更准确的公式表达,从另一个角度解决问题
虚拟变量是0-1变量,指示变量
既然主要探究的就是性别和地域分别对于工资和贷款申请成功率的影响,那么这两个因素在各自的模型里就是核心解释变量,其他变量都是控制变量
虚拟变量的回归系数表示的是其他因素相同且一定的情况下,由虚拟变量带来的对y的影响/变化,即虚拟变量两种取值的差异程度,如女性工资和男性工资的平均差异
虚拟变量的数目是分类数-1
下图中的定性变量都是要用虚拟变量建模的,在stata中也可以用代码生成虚拟变量
stata示例
自变量还有这种复杂形式的关系,随着x1的增大,y随x2增大的更多,即y跟x2的关系不是独立于x1的
怎么评估回归质量/拟合效果分析——判定系数(拟合优度)
通过评估残差的样本标准差或者样本方差,进行方差分析,越小则回归模型的解释性越好,精度越高
最小二乘拟合的求解决定了残差和必须是0,所以残差的样本均值也是0
由于有两个限制条件,所以残差平方和自由度少了2个,即当有n-2个残差已知时,另外2个也就确定了。
这里样本方差是除以n-2,不是n-1,更不是n,也一样是为了保证样本方差是总体方差的无偏估计。
我们用样本方差度量样本的变异程度
判定系数
调整的拟合优度(引入自变量的个数到判定系数的计算中)
调整后的拟合优度更有参考意义
扰动项必须是“同方差”和“无自相关”的球型扰动项
稳健标准误处理数据异方差
一般数据都是异方差的,这时候用最小二乘估计的回归系数是不可靠的,针对他们的假设检验也不可靠,我们可以用稳健标准误解决
数据定量的指标已经在excel中标准化了
在stata中把定性变量设置为虚拟变量,然后直接多元线性回归
所以可以写出回归方程
高 考 总 分 = − 0.0024 ∗ A 1 0.1186 ∗ 平 时 成 绩 − 0.1287 ∗ 期 末 成 绩 0.0368 ∗ 高 考 数 学 0.9246 高考总分=-0.0024*A1 0.1186*平时成绩-0.1287*期末成绩 0.0368*高考数学 0.9246高考总分=−0.0024∗A1 0.1186∗平时成绩−0.1287∗期末成绩 0.0368∗高考数学 0.9246
根据后面的解读可以知道,这个结果的F值不大,回归结果并不好,从最后的回归结果看,期末成绩竟然和高考总分负相关了,肯定不对
stata回归结果解读(model,SS)是回归平方和SSR(RESIDUAL,ss)是剩余平方和SSE(total,ss)是SST,等于SSR SSE
最关键的回归结果,即回归系数在第一列,后面还给了每个系数的标准差(越小越好),t检验值,t检验的p值(越小说明这个系数越显著不为0),以及置信区间
上图上面的红框,一个定性变量的n个虚拟变量(n为这个定性变量的取值总类数),有一个会因为多重共线性被stata自动检测到并忽略,这是因为我们本类就只需要设置n-1个虚拟变量,上面也讲来的
右边的F值越大,prob越小,则表示所有系数的联合显著性越大,即所有变量都为0的概率很低SSE
obs,观测数目,即样本总数
异方差是什么,怎么检验和处理
回归结束后一定要见检验异方差,也算检验回归结果
用残差的平方表示随机误差项的方差
有六两种图示检验法检验异方差
一是用每个解释变量和被解释变量的散点图看
而是解释变量和残差平方的图像
所以画这个散点图
bp检验
原假设是同方差
原假设:扰动项不存在异方差P值大于0.05,说明在95%的置信水平下接受原假设,即我们认为扰动项不存在异方差。
这大概就是为啥上面加了robust得到的回归结果相同的理由了,因为不存在异方差
怀特检验原假设:不存在异方差
结果p大于0.05,接受原假设,不存在异方差
这个例子就是有异方差的咯
画出回归的残差
多重共线性的表现
梳理横截面数据的回归步骤
这里只研究截面数据的多元回归
excel数据导入stata会自动认为是截面数据
先检验各个自变量的相关性(更好地做法是,一上来先把所有变量都放在回归模型中,然后观察结果,然后再检验自变量的相关性,根据相关性剔除一些变量再次回归查看结果)
所有回归必须用robust
发现house和car有相关性以后,就剔除了car变量,再次回归得到的F值变大了
多重共线性检验
逐步回归向前逐步回归
向后逐步回归
比较
所有变量一起回归,只有部分结果
方差膨胀系数,说明有明显的多重共线性
向后
向前
可以看到,向前回归得到了22个变量,向后得到了21个变量,向后逐步回归的F值最大,向前和向后的方差膨胀系数几乎相等,所以对多重共线性的解决是不错的,二者的判定系数也几乎一样。
基本上剔除的变量都是地域的分类变量,说明多重共线性也主要是他们引起的
代码:
注:以上学习材料整理均源于网络,如有侵权,请联系删除。
,免责声明:本文仅代表文章作者的个人观点,与本站无关。其原创性、真实性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容文字的真实性、完整性和原创性本站不作任何保证或承诺,请读者仅作参考,并自行核实相关内容。文章投诉邮箱:anhduc.ph@yahoo.com