专栏名称: 经管之家
经管之家官微,每个经济、管理、金融、统计的学习和从业者,都应该有的帐号。经管之家(论坛),是国内成立十年的大型经济、金融、管理、计量统计社区,十年磨一剑,我们共同的家园!我们提供“经管爱问”答疑微服务,以及相关数据分析及金融培训课程。
目录
相关文章推荐
起点财经  ·  卖麻辣烫的东北人,上海买下一栋楼 ·  21 小时前  
第一财经  ·  沸腾了!再掀狂澜! ·  3 天前  
神嘛事儿  ·  我回答了 @怎么这么赞 ... ·  5 天前  
神嘛事儿  ·  我回答了 @谦谦亨通 ... ·  5 天前  
有限次重复博弈  ·  以前直接公布股票账户余额变化其实更准参考网页 ... ·  1 周前  
51好读  ›  专栏  ›  经管之家

初级计量经济学建模的基础指南

经管之家  · 公众号  · 财经  · 2016-10-26 11:08

正文

本文仅针对计量经济学本科课程的初级用户(研究生及以上读者可以忽略)。


一、引子


当我刚刚开始学习和实践计量经济学建模的时候,其实也与所有课堂上的学生一样,大脑一片空白,完全没有方向。当时,我要解决的问题很现实:由于初到澳洲,买不起全新的教材(100多澳元当时的汇率折合800-900多人民币一本书),就去学校的广告栏搜寻出售二手书的广告。然后以原价三分之一左右的价格买一本教材。随后,我就想了解二手书的交易如何影响全新原价教材的销售。


如果要用简单的单方程简约模型(Reduced-form Model)来解决这个问题,看起来并不是很容易。而现在,我的学生在课堂上遇到的很多问题,其实也是类似的。


比如,有同学要研究商品价格的决定因素。一般而言,比较合理的方法是用联立方程组,按照供求关系来建模。但如果一定要用单方程模型,是否可以做呢?这是一个可以讨论,也值得思考的问题。



二、原则


书本上说的原则,第一条是建模有经济学理论和现实依据。这句话当然有道理,但基本跟没说一样——按照这句话,初学者依然无法着手建模。书本的这条原则,默认建模的基础不是微观计量经济学模型。而事实上,在Toy Model(我们课堂上的建模,基本都是这类“玩具模型”),也就是“闹着玩儿”的练习范畴内,我们只要求学生有一定的“思路”,能自圆其说就行。


那么,如何获得简便而清晰的建模思路呢?这才是本部分要解决的重点问题。


第一,先确定对被解释变量(Y)影响最大的解释变量(X)。在不考虑内生性(Endogeneity,这个我课上还没有讲)的前提下,X必须是建立在数据可以获得且对Y有着非常大解释力的基础上。


第二,确定X对Y的解释力符合一般的经济学原理(一般原理就可以,不需要很复杂)或者经济学直觉(Intuition)。实际上,按照我的理解,选择X首先是人的第一感觉,然后再是复查。我觉得这样的顺序比较适合初学者。而书本原则是建立在大量实践和有丰富经验的基础上的,对于初学者而言不具备可操作性。


第三,确定模型符合经典假设的主要部分。比如,零均值和同方差。当然,实践中,很多假设都难以实现。我们不可能真的一一比对几大假设,然后建模。在操作部分,我们重点来讲如何做简单的取舍。


三、操作


第一,解释变量的选择应该在数据可以获得情况下,尽量sharp。可以参考的例子如:宏观方面,用物质和人力资本解释经济增长;微观方面,用受教育年数解释个人收入。在分析经济增长和个人收入时,我们可以有多种解释变量的选择。为什么我们倾向上述的方案?这要回到宏观和微观经济学的基础理论去找答案。同时,我们也要从数据获得的方面去想问题。


问题1:是否可以用人均GDP来解释经济增长?


问题2:是否可以用父母收入来解释个人收入?


问题3:如果两个方案可行,那么它们与前文案例中的建模思路一致吗?


第二,解释变量互相之间尽量不重叠。我们可以在模型中引入多个解释变量,它们要解释不同“层面”或者“维度”的问题,而不能是反复聚焦一个点。未来我们会讲到“多重共线性”,大家会对这一条有更多的认识。


第三,即使是简单的、“闹着玩儿”的模型,也有一定的意义。它的意义在于对某个复杂问题的“抽象”。所以,除了前面两条建议之外,我还想强调一点就是,我们通过解释变量系数的估计,到底要答案什么目的?比如,“找到价格的决定因素”;比如,“估计教育的回报率”;比如,“确定某一个决策是否合理”等等。


四、结语


也许在建模之初,你也许没有一个很明确的目标和清晰的思路,但随着建模实践的深入,我希望也相信大家会慢慢找到正确的方式。



附录


use "D:\w3.dta", clear //(前提是你的D盘下有一个叫w3的stata数据文件,这个数据文件第五周上机操作,我会发给大家)


twoway scatter y x //(默认)


twoway scatter y x, ms(circle_hollow) //(空心圆)


twoway scatter y x, ms(circle_hollow) || lfit y x // (加线性拟合线)


twoway scatter y x, ms(circle_hollow) mc(blue)|| lfit y x, lc(red) // (蓝色空心圆和红色拟合线)