回归分析是数据分析中最基础也是最重要的分析工具,绝大多数的数据分析问题,都可以使用回归的思想来解决。
建模比赛中,前两种数据类型最常考到;面板数据较为复杂,是经管类学生在中级计量经济学中才会学到的模型。
横截面数据往往可以使用回归来进行建模,我们通过回归可以得到自变量与因变量之间的相关关系以及自变量的重要程度。
时间序列数据往往需要进行我们进行预测,时间序列模型的选择也很多,需要根据题的情况选择合适的模型对数据进行建模。
具体讲解可参考:
https://blog.csdn.net/weixin_47066458/article/details/113826330
线性假定并不要求初始模型都呈y=β0 + β1*xi + μi 的严格线性关系,自变量与因变量可以通过变量替换而转化成线性模型,如:
在使用线性回归模型前,需要对数据进行预处理。(用Excel、Matlab、Stata等软件)
如果满足误差项μ和所有自变量x均不相关,则称该回归模型具有外生性;
如果相关,则存在内生性,内生性会导致回归系数估计的不准确——不满足无偏性和一致性。
即μ包含了所有与y相关,但未添加到回归模型中的变量,如果这些变量和我们已经添加的自变量相关,则存在内生性。
%% 蒙特卡洛模拟:内生性会造成回归系数的巨大误差
times = 300; % 蒙特卡洛的次数
R = zeros(times,1); % 用来储存扰动项u和x1的相关系数
K = zeros(times,1); % 用来储存遗漏了x2之后,只用y对x1回归得到的回归系数
for i = 1: times
n = 30; % 样本数据量为n
x1 = -10+rand(n,1)*20; % x1在-10和10上均匀分布,大小为30*1
u1 = normrnd(0,5,n,1) - rand(n,1); % 随机生成一组随机数
x2 = 0.3*x1 + u1; % x2与x1的相关性不确定, 因为我们设定了x2要加上u1这个随机数
% 这里的系数0.3我随便给的,没特殊的意义,你也可以改成其他的测试。
u = normrnd(0,1,n,1); % 扰动项u服从标准正态分布
y = 0.5 + 2 * x1 + 5 * x2 + u ; % 构造y
k = (n*sum(x1.*y)-sum(x1)*sum(y))/(n*sum(x1.*x1)-sum(x1)*sum(x1)); % y = k*x1+b 回归估计出来的k
K(i) = k;
u = 5 * x2 + u; % 因为我们回归中忽略了5*x2,所以扰动项要加上5*x2
r = corrcoef(x1,u); % 2*2的相关系数矩阵
R(i) = r(2,1);
end
plot(R,K,'*')
xlabel("x_1和u'的相关系数")
ylabel("k的估计值")
无内生性(no endogeneity)要求所有解释变量均与扰动项不相关。这个假定通常太强,因为解释变量一般很多(比如,5‐15个解释变量),且需要保证它们全部外生。
是否可能弱化此条件?答案是肯定的。解释变量可以区分为核心解释变量与控制变量两类。
在实际应用中,我们只要保证核心解释变量与不相关即可。
1、一元线性回归: = + + ,x每增加1个单位,y平均变化b个单位;
2、双对数模型: = + + ,x每增加1%,y平均变化b%;
3、半对数模型: = + + ,x每增加1%,y平均变化b/100个单位;
4、半对数模型: = + + ,x每增加1个单位,y平均变化(100b)%。
目前,对于什么时候取对数没有固定的规则,但是有些经验法则:
取对数的好处:
如果自变量中有定性变量,例如性别、地域等,在
回归中要怎么处理呢?
例如:我们要研究性别对于工资的影响(性别歧视)
Female的解释:
为了避免完全多重共线性的影响,引入虚拟变量的个数一般是分类数减1,例如上例中我们只引入了Female而没有同时引入Female和Male。
回归分为解释型回归和预测型回归。 预测型回归一般才会更看重方;
解释型回归更多的关注模型整体显著性以及自变量的统计显著性和经济意义显著性即可。
可以对模型进行调整,例如对数据取对数或者平方后再进行回归。
数据中可能有存在异常值或者数据的分布极度不均匀。
我们引入的自变量越多,拟合优度会变大。但我们倾向于使用调整后的拟合优度,如果新引入的自变量对SSE的减少程度特别少,那么调整后的拟合优度反而会减小。
为了更为精准的研究影响评价量的重要因素(去除量纲的影响),可考虑使用标准化回归系数。对数据进行标准化,就是将原始数据减去它的均数后,再除以该变量的标准差,计算得到新的变量值,新变量构成的回归方程称为标准化回归方程,回归后相应可得到标准化回归系数。
标准化系数的绝对值越大,说明对因变量的影响就越大(只关注显
著的回归系数)
在之前的回归分析中,我们都默认了扰动项是球型扰动项。
(1)OLS估计出来的回归系数是无偏、一致的。
(2)假设检验无法使用(构造的统计量失效了)。
(3)OLS估计量不再是最优线性无偏估计量(BLUE)。
(1)使用OLS + 稳健的标准误
如果发现存在异方差,一 种处理方法是,仍然进行OLS 回归,但使用稳健标
准误。这是最简单,也是目前通用的方法。只要样本容量较大,即使在异方差的情况下,若使用稳健标准误,则所 有参数估计、假设检验均可照常进行。换言之,只要使用了稳健标准误,就可以与异方差“和平共处”了。
(2)广义最小二乘估计法GLS
原理:方差较大的数据包含的信息较少,我们可以给予信息量大的数据(即方差较小的数据更大的权重)
缺点:我们不知道扰动项真实的协方差矩阵,因此我们只能用样本数据来估计,这样得到的结果不稳健,存在偶然性。
注: 我们常用第一种方法来解决异方差
(1).BP检验
(2).怀特检验
我们无需掌握两种检验的原理,只需知道二者的异同:
BP检验与怀特检验的区别在于,后者还包括平方项与交叉项。因此,BP检验可以看成是怀特检验的特例。BP检验的优点在于其建设性,即可以帮助确认异方差的具体形式。
原假设:扰动项不存在异方差
通过P值来检验扰动项是否存在异方差
在Stata中利用reg可以消除多重共线性,但是无法消除非常接近于多重共线性的项,这就有可能导致我们得到的结果不准确
如果发现存在多重共线性,可以采取以下处理方法。
向前逐步回归Forward selection:将自变量逐个引入模型,每引入一个自变量后都要进行检验,显著时才加入回归模型。
(缺点:随着以后其他自变量的引入,原来显著的自变量也可能又变为不显著了,但是,并没有将其及时从回归方程中剔除掉。)
向后逐步回归Backward elimination:与向前逐步回归相反,先将所有变量均放入模型,之后尝试将其中一个自变量从模型中剔除,看整个模型解释因变量的变异是否有显著变化,之后将最没有解释力的那个自变量剔除;此过程不断迭代,直到没有自变量符合剔除的条件。
(缺点:一开始把全部变量都引入回归方程,这样计算量比较大。若对一些不重要的变量,一开始就不引入,这样就可以减少一些计算。当然这个缺点随着现在计算机的能力的提升,已经变得不算问题了)
注意:
(1)向前逐步回归和向后逐步回归的结果可能不同。
(2)在我们的科研论文中不要轻易使用逐步回归分析,因为剔除了自变量后很有可能会产生新的问题,例如内生性问题。但是建模比赛中可以使用逐步回归分析。