拓冰建站拓冰建站
首页 / 资讯中心 / 正文

计量经济学案例分析:从OLS到异方差与预测区间

简介这是一份面向计量经济学初学者与经管类学生的案例分析汇总文档。文档以居民消费支出与可支配收入关系为典型场景完整演示从研究目的、模型设定、数据搜集、OLS估计到模型检验的全流程重点讲解2002年截面数据下如何建立一元线性回归模型并结合EViews软件给出操作步骤与结果解读。内容覆盖变量选择依据、散点图观察、参数估计、经济意义检验、拟合优度与t检验等关键环节适合正在学习回归分析、准备课程论文或考研复习的读者作为对照参考。资源为单个PDF文件包体约1.25MB内容编排紧凑重点突出便于打印或电子阅读。文档不仅呈现回归输出还穿插了经济含义解释与操作提示能帮助读者理解计量分析中从数据到结论的完整思路。目前已有487人学习下载是一份实用性较强的入门辅助材料。1. 一份案例汇总里的八种计量建模状态拿到这份《计量经济学案例分析汇总.pdf》别急着把它归入“课程复习资料”那一类。它实际覆盖了回归分析里最容易翻车的六个环节OLS基线估计、多重共线性处理、异方差检验与修正、分布滞后模型、虚拟变量结构突变、遗漏变量与自相关最后一个案例还附带完整的点预测和区间预测流程。每个案例用的都是2000年前后中国统计年鉴里的真实截面或时间序列数据从EViews菜单操作一路推到统计量判断适合两类人一类是需要照着一份可复现流程完成课程设计的学生另一类是做实证分析时想快速核对检验顺序的从业者。这份PDF最有价值的地方不在于公式推导而在于它给出了一个容易被人反着用的判断顺序先看系数符号是否符合经济意义再看t检验是否显著最后才看R²。很多实证报告写崩正是把这三步顺序搞反了。2. OLS基线模型消费函数的设定、散点图与t检验读数2.1 为什么这个案例选截面数据而不是时间序列案例一的研究对象是“各地区居民消费差异”核心是比较空间上的不同而不是消费水平在时间上的变动。因此模型直接选用2002年截面数据被解释变量Y定为“城市居民家庭平均每人每年消费支出”解释变量X定为“城市居民人均年可支配收入”。这里有一个容易被忽略的选型理由像零售物价指数、利率这类变量在同一个年份的不同地区之间差异并不大放进模型后几乎没有信息量而居民财产、购物环境虽然理论上影响消费但一是不易取得数据二是与收入高度相关。把这些因素归入随机扰动项既避免了多重共线性也保住了模型的可解释性。这个取舍逻辑在教材里只是一句话在实际建模中却是决定模型能否收敛的关键一步。2.2 EViews工作文件与数据输入截面数据的频率设置与时间序列不同。新建工作文件时路径是File/New/Workfile在Workfile frequency里选择Undated or irregular起止顺序号填1和31对应31个省级行政区。数据输入可以直接用命令窗口也可以走菜单。命令行方式更简洁data Y X回车后出现分组数据编辑窗口在Y和X两列下顺序录入数据即可。录入完成后用散点图判断变量关系形态点击View/Graph/Scatter选择Y和X观察点是否近似落在一条直线附近。案例中散点图呈现明显线性趋势因此模型设定为Y C(1) C(2)*X这里的C(1)和C(2)是EViews里对截距和斜率的默认写法。值得注意的是散点图只能判断线性关系是否合理不能替代之后的统计检验它解决的是“模型形式是否选对”的问题。2.3 回归输出读数的三个顺序估计命令有两种等价写法。菜单路径是Quick/Estimate Equation在Equation specification里输入Y C X命令行则直接输入LS Y C XLS是 Least Squares 的缩写EViews会输出回归结果表。读这张表时我一般按下面这个顺序来而不是先盯着R²看。读数步骤案例一数值判断标准经济意义检验β̂₂ 0.7585110 β̂₂ 1符合边际消费倾向截距t检验t(β̂₁) 0.982520小于t₀.₀₂₅(29) 2.045不能拒绝β₁ 0斜率t检验t(β̂₂) 20.54026大于2.045拒绝β₂ 0拟合优度可决系数较高解释变量解释了消费支出绝大部分差异先看斜率符号0.758511意味着人均可支配收入每相差1元消费支出相差约0.76元边际消费倾向落在0到1之间这符合经济学直觉。再看t值斜率系数标准误SE(β̂₂) 0.036928t值达到20.54远大于临界值2.045说明收入对消费的解释力不是偶然的。截距项不显著并不需要太担心在截面回归里截距往往只是一个基线值没有明确的经济含义。最后才看R²因为在这个模型里R²高是预期之中的结果它不能反过来证明模型设定正确。提示t统计量等于系数估计值除以标准误。报告回归结果时标准误和t值必须成对出现只写“p 0.05”会让读者无法复核你的计算。回归完成后点击Resids可以同时看到残差、实际值和拟合值三条曲线。这一步在原始案例里被一笔带过但对后续的异方差检验很重要因为残差序列的形状是判断方差是否稳定的第一手线索。3. 多重共线性识别相关系数矩阵与逐步回归的取舍逻辑3.1 多重共线性的典型症状案例三研究的是影响国内旅游市场收入的因素模型设定为对数形式被解释变量是国内旅游收入Y解释变量包括国内旅游人数X₂、城镇居民人均旅游支出X₃、农村居民人均旅游支出X₄、公路里程X₅、铁路里程X₆。样本区间是1994年到2003年n 10解释变量却有5个自由度非常紧张。全模型回归结果呈现出多重共线性的标准症状整体拟合很好R² 0.9954调整R² 0.9897但X₂和X₆的t检验都不显著而且X₆铁路里程的系数符号与理论预期相反。如果只看R²这个模型似乎无懈可击一旦看单个系数的t值问题立刻暴露。多重共线性并不会破坏OLS的无偏性但它会放大系数估计量的方差导致本应显著的变量变得不显著甚至出现符号反转。3.2 相关系数矩阵先确认病灶再动手用EViews查看解释变量之间的相关程度选中需要检验的序列然后执行View/Correlations输出的是一个相关系数矩阵。案例中各解释变量两两之间的相关系数都偏高这证实了多重共线性确实存在而不是样本量小的偶然现象。需要注意的是相关系数矩阵只能诊断两个变量之间的线性关系三个以上变量之间的共线关系需要借助辅助回归的R²或方差膨胀因子VIF来判断但在这个案例里相关系数矩阵已经足够说明问题。3.3 按R²排序的逐步回归教材给出的处理方式是按单变量回归的R²对解释变量排序再以最高的变量为基础逐步引入其他变量。案例中的排序结果是X₃、X₆、X₂、X₅、X₄即以城镇居民人均旅游支出X₃为起点。整个逐步回归过程可以浓缩为一张表轮次模型构成t检验结果处理1X₃ X₆X₆不显著临界值t₀.₀₂₅(7) 2.365剔除X₆2X₃ X₂X₂不显著剔除X₂3X₃ X₅两者均显著保留X₅4X₃ X₅ X₄三者均显著临界值t₀.₀₂₅(6) 2.447作为最终模型每一轮加入新变量后不仅要看新变量的t值还要观察原有变量的显著性和系数符号是否发生变化。如果加入新变量导致原有变量的符号翻转说明新变量携带的信息与旧变量高度重叠这种变量即使t值显著也要谨慎对待。如果要用Python快速核对该流程常见的做法是用statsmodels按顺序跑OLS以t值作为保留与否的判据import statsmodels.api as sm # 假设 df 已包含 y, x2, x3, x4, x5, x6 # 按单变量 R^2 从高到低排序后的变量顺序 order [x3, x6, x2, x5, x4] selected [] for var in order: X sm.add_constant(df[selected [var]]) model sm.OLS(df[y], X).fit() # t 临界值随自由度变化这里按 n10, k3 的近似值 if abs(model.tvalues[var]) 2.365: selected.append(var) print(f保留 {var}: t{model.tvalues[var]:.3f}) else: print(f剔除 {var}: t{model.tvalues[var]:.3f})这段代码的逻辑与EViews逐步回归一致每次只加入一个新候选变量新的t值通过临界值检验才保留否则丢弃。注意临界值2.365对应的是n10、含截距共3个参数时的t₀.₀₂₅(7)随着保留变量增多自由度会变化需要按n-k重新查表。实际项目中我通常不会把逐步回归当作唯一依据而是配合VIF再做一遍确认因为逐步回归本质上是一种经验搜索策略对变量的进入顺序敏感。4. 异方差三检验与WLS加权修正医疗机构案例的完整链路4.1 图形法从残差平方序列看方差漂移案例四使用四川省2000年21个地市州的截面数据研究医疗机构数Y与人口数X的关系。理论模型设定为Y C(1) C(2)*X先跑一遍OLS然后生成残差平方序列。EViews命令是genr e2 resid^2在EViews里genr是 generate 的缩写resid是回归后自动生成的残差序列resid^2逐点平方后存入新序列e2。绘制e2对X的散点图会发现点大多落在图形左下角的三角区域内随着X增大残差平方的分布范围也在向上扩张。这是一种非常典型的异方差形态方差与解释变量水平正相关。人口多的地区医疗机构数量的绝对波动也大这不难理解但图形法只能给出定性判断结论是否可靠还需要统计检验来支撑。4.2 Goldfeld-Quanadt检验样本分段与F统计量GQ检验的思路是把样本按解释变量排序后分成两段分别回归并比较残差平方和。案例中n 21删除中间约1/4的观测值即去掉中间的5个样本剩下两段各8个观测前段区间为1到8后段为14到21。EViews操作分三步sort x smpl 1 8 ls y c x smpl 14 21 ls y c x smpl 1 21sort x把数据按X递增排序smpl用于设定样本区间两组分别回归后记录各自的残差平方和。前段Σe₁² 144958.9后段Σe₂² 734355构造F统计量F 734355 / 144958.9 ≈ 5.066F检验的分子用较大的残差平方和这是GQ检验的一个常见易错点。两个子样本的自由度都是8 - 2 6查F分布表得F₀.₀₅(6,6) 4.28F 5.066 4.28拒绝同方差原假设。4.3 White检验与WLS权重选择White检验不需要对样本排序也不需要预设方差与哪个变量有关它用解释变量的平方项和交叉项对残差平方做辅助回归。EViews中在回归结果窗口选择View/Residual Diagnostics/White Heteroskedasticity Test输出中的nR² 18.0694χ²₀.₀₅(2) 5.9915nR²远大于临界值同样拒绝同方差假设。三种检验的结论汇总如下检验方法统计量临界值结论图形法残差平方随X扩张无定量标准怀疑存在异方差Goldfeld-QuanadtF 5.066F₀.₀₅(6,6) 4.28拒绝同方差WhitenR² 18.0694χ²₀.₀₅(2) 5.9915拒绝同方差异方差存在时OLS估计量仍然无偏但标准误和t值不再可信。修正方式是加权最小二乘法WLS案例分别尝试了三组权数w1 1/X w2 1/X^2 w3 1/sqr(X)在EViews中运行加权回归需要在方程估计对话框的Options里勾选Weighted LS并填入权数序列名。比较三组结果后w2 1/X² 的估计效果最好即用X的平方的倒数作为权重。这个结果有直观解释如果残差方差大致与X²成正比那么把每个观测值除以X后新扰动项的方差就被拉平了。选权重时不必试遍所有函数形式我一般会先观察e2对X散点图的扩张速度线性扩张用1/X近似抛物线扩张用1/X²拿不准就多试几组比较t值和残差平方的变化。提示WLS的权重一旦设定回归输出的R²和标准误都基于加权后的数据不能与OLS的R²直接对比。报告时要说清楚“以1/X²为权重的WLS估计”避免读者误解。5. 分布滞后、虚拟变量与DW遗漏变量检验动态结构的处理顺序5.1 阿尔蒙多项式与PDL指令案例六用美国制造业库存量与销售额数据演示分布滞后模型。当期货币供应量M2Z对物价指数TBZS的回归中t统计量不显著但这不代表两者无关——更可能的原因是货币供应对物价的影响存在时滞当期变动还没有传导到物价上。处理方式之一是阿尔蒙法将分布滞后系数βᵢ用二次多项式近似构造出Z₀、Z₁、Z₂三个线性组合变量然后回归LS Y C Z0 Z1 Z2得到α₀、α₁、α₂的估计值后再代回多项式反解出β₀到β₃。这个过程步骤繁琐所以EViews提供了现成的PDL指令LS Y C PDL(X, 3, 2)参数含义如下表参数取值含义X解释变量分布滞后项施加的对象3滞后长度估计当期到滞后3期的共4个系数2多项式阶数用二次多项式近似系数序列EViews的PDL指令采用阿尔蒙多项式的派生形式输出结果里PDL01、PDL02、PDL03对应的系数不是阿尔蒙多项式系数本身的估计但最终还原出来的分布滞后系数β₀到β₃与分步计算完全一致。这个细节很多资料不提导致有人直接把PDL输出当成阿尔蒙系数写进论文。5.2 虚拟变量分段回归案例七研究1978到2003年居民储蓄与国民总收入的关系样本期内出现了两个结构变化点1996年前后社会保障体制改革2000年前后经济增速换挡。处理方式是在模型中加入两个虚拟变量D₁和D₂分别标记1996年以后和2000年以后两个时段。虚拟变量的定义方式是分段回归的核心D1 1 (t 1996), D1 0 (t 1996) D2 1 (t 2000), D2 0 (t 2000)回归结果中各个系数的t检验均大于2说明三个时期的储蓄函数在统计意义上确实不同。1996年以前收入每增加1亿元储蓄存款增加额是一个相对较小的数值2000年以后这个数值明显放大。这说明经济体制变化改变了居民的储蓄行为而不是简单的收入水平上升。设定虚拟变量时要注意一个问题如果模型同时包含截距和所有分段的虚拟变量会出现完全多重共线性通常需要省略一个基准组。案例的处理方式是让D₁和D₂依次叠加1996年是第一个断点2000年是第二个断点两个变量共同描述三段不同的斜率这种做法比分别估计三个子样本更节省自由度。5.3 DW统计量识别遗漏变量案例八的问题更具实战色彩用GDP解释进口总额IM回归得到IM -1067.337 0.2307*GDP模型拟合尚可R²约0.92残差图却呈现明显的自相关形态。DW统计量为0.5357n 24k 1不含截距的解释变量个数查5%临界值dL 1.273、dU 1.4460.5357 dL拒绝无自相关原假设。这里的关键判断是自相关只是症状遗漏变量才是病因。直接用AR(1)修正残差属于治标不治本真正该做的是把汇率等因素补进模型。修正后的模型加入了GDP的滞后项GDP(-1)和汇率的平方项EXCHANGE²而EXCHANGE本身的水平项由于t值不显著被剔除。这个案例提醒我一个处理顺序出现DW值偏低时先检查是不是漏了变量再考虑误差项本身的序列相关。检验遗漏变量前要保证样本已经按解释变量排序DW临界值表要求残差按某个解释变量有序排列案例中GDP已经排好序所以可以直接查表。6. 预测区间复现用Forecast输出反推手算步骤6.1 点预测与区间预测的差距案例一在完成回归估计后做了两个收入水平下的预测西部城市居民人均年可支配收入达到8270元时消费支出预测值为6555.132达到12405元时预测值为9691.577。EViews的操作是在Workfile窗口把Range的End data从31改到33再将Sample范围从1 31改为1 33然后smpl 1 33 data x在X序列的第32、33行分别输入8270和12405回到方程窗口点击Forecast指定预测序列名Yf。EViews会给出点预测值但只有再往下走一步才能得到真正可用的区间预测。区间预测公式在教科书里长这样平均值预测区间Yf ± t(0.025, n-2) * Se * sqrt(1/n (Xf - Xbar)^2 / sum(x^2)) 个别值预测区间Yf ± t(0.025, n-2) * Se * sqrt(1 1/n (Xf - Xbar)^2 / sum(x^2))两个公式只差一个1后果却很大个别值区间比平均值区间宽得多。平均值预测关心的是“收入达到8270元的那些城市的平均消费水平”个别值预测关心的是“某一个具体城市可能达到的消费水平”后者的不确定性天然更大。6.2 用电子表格核对EViews的Forecast手工验证预测区间的步骤如下表数据项本例来源用途Yf 6555.132 / 9691.577EViews Forecast输出点预测基准t₀.₀₂₅(29) 2.045t分布表95%置信水平临界值Se 413.1593回归输出中的回归标准误估计残差波动n 31样本容量校正小样本偏差X̄ 和 Σ(Xᵢ - X̄)²View/Descriptive Stats反映X取值位置拿到这些数值后我习惯先在Excel里把公式展开逐步计算根号内的三个部分再与EViews给出的预测标准误做对比。只要你的X̄和Σ(Xᵢ - X̄)²没有取错结果会精确到小数点后两三位对不上时九成是Σ(Xᵢ - X̄)²用了总平方和除以n而不是n-1。这个案例的预测是用截面数据做的空间预测含义是“在西部收入水平赶上东部某一档位时平均消费水平会落在什么区间”。和基于时间序列的外推预测不同它没有假设时间趋势延续因此适用于政策情景模拟。Yf1 平均值区间: 6555.13 ± 2.045 * 413.1593 * sqrt(1/31 (8270 - Xbar)^2 / Sxx) Yf2 平均值区间: 9691.58 ± 2.045 * 413.1593 * sqrt(1/31 (12405 - Xbar)^2 / Sxx)把这两行公式留在手边以后任何EViews的预测输出都能拆开验证。每次做案例复现时先用一个已知的X值跑一遍Forecast再用手算核对一遍确认公式写的没有串位会比直接信任输出更稳。本文还有配套的精品资源点击获取
分享:

看完干货,该让你的企业上线了

免费需求沟通 · 48 小时内出具建站方案 · 河南本地可上门