凡是搞计量经济的,都关注这个号了
邮箱:econometrics666@sina.cn
所有计量经济圈方法论丛的do文件, 微观数据库和各种软件都放在社群里.欢迎到空间计量研究小组交流访问(文末“阅读原文”).
图片 推荐阅读:
1.实证研究中用到的135篇文章, 社科学者常用toolkit
2.1998-2016年中国地级市年均PM2.5数据release
3.计量经济圈经济社会等数据库合集, 社科研究大米
下面的程序是与空间计量百科全书式的使用指南, 只此一份掌握此独门秘籍相对应的。数据由于太大,因此我们放在空间计量研究小组的社群里的,有需要可以到文末“阅读原文”通道获取。这当然只是一部分比较常用的空间计量程序,而对于使用Matlab, Python等工具进行空间分析的,强烈建议加入计量经济圈空间计量研究小组。
**written by @空间计量研究小组(spatial econometrics research team),作者: 甲壳虫
**-------------------------------------------------
**估计大学生毕业率对失业率的影响
//------------------------------------------------
**下载并处理成空间计量形式的数据----------
use texas_ue.dta, clear //载入这个数据
describe //描述一下这个数据
merge 1:1 fips using tl_2017_us_county //把前面的数据与shapefile合并
keep if _merge==3 //保留匹配好了的样本
drop _merge
rename NAME countyname
drop STATEFP COUNTYFP COUNTYNS GEOID
drop NAMELSAD LSAD CLASSFP MTFCC CSAFP
drop CBSAFP METDIVFP FUNCSTAT
drop ALAND AWATER INTPTLAT INTPTLON
save texas_ue.dta, replace //生成新的包含shapefile的样本
**数据整理好之后的空间计量估计-------------
summarize unemployment
grmap, activate
grmap unemployment //画出unemployment的地图
regress unemployment college income //做一个ols回归
spmatrix create contiguity W //生成相邻权重矩阵W
estat moran, errorlag(W) //检测一下是否有spatial correlation
spmatrix export W using contig.xls //把空间权重矩阵W输出
spmatrix create idistance M //生成距离倒数的权重矩阵M
**---------------------------------------------
**spregress方法考虑空间效应
//-----------------------------------------------
**如果没有加入iv,dv,error spatial lag做回归------------
regress unemployment college income
spregress unemployment college income, gs2sls
spregress unemployment college income, ml
**1.spregress有两种估计方法, spatial lag of the DV-------
spregress unemployment college income, gs2sls dvarlag(W) //用广义空间2sls估计
spregress unemployment college income, ml dvarlag(W) //用ml估计spatial lag of the dependent variable
**2.spatial lag of the IV-------------
spregress unemployment college income, gs2sls ivarlag(W:college)
estat impact //平均的效应
**3.spatial lag of error------------
spregress unemployment college income, gs2sls errorlag(W)
estat impact
**4.spatial lag of DV, IV and error--------
spregress unemployment college income, gs2sls dvarlag(W) heteroskedastic ///
errorlag(W) ivarlag(W: college) //同时把dv,iv和error的spatial都放进去
estat impact
spregress unemployment college income, gs2sls dvarlag(W) errorlag(W) ///
ivarlag(M: college) ///用了两个空间权重矩阵
estat impact
spregress unemployment college income, ml vce(robust) dvarlag(W) errorlag(W) ///
ivarlag(W: college) ivarlag(M: college) //ml方法可以有两个spatial lag of iv
estat impact
**----------------------------------------------
** spivregress方法处理内生性问题
//----------------------------------------------
use dui_southern, clear //用数据库来运行spivregress
spset //设置成空间回归形式的数据
**检测是否有sparital correlation-------
regress dui nondui vehicles i.dry
spmatrix create contiguity WI //生成相邻权重矩阵WI
spmatrix create idistance MI //生成距离倒数权重矩阵MI
estat moran, errorlag(WI) //检测是否有spatial correlation
estat moran, errorlag(WI) errorlag(MI)
grmap, activate
grmap dui //酗酒导致的被捕率(10wan)地图
spivregress dui nondui vehicles i.dry (police = elect), dvarlag(WI) ///
errorlag(WI) //用elect变量作为police的工具变量
estat impact
spivregress dui nondui vehicles i.dry (police = elect), dvarlag(WI) ///
errorlag(WI) ivarlag(WI: i.dry) //
**------------------------------------------
** spxtregress方法处理面板数据
//-------------------------------------------
use homicide_1960_1990, clear //用数据库来运行spxtregress
list _ID year in 1/8, sepby(_ID)
xtset _ID year //需要定义面板数据形式
spset //设置成空间回归形式的数据
bysort _ID: gen npanel = _N //检测一下是否_ID有重复
tab npanel //如果有重复,那需要使用spbalance
**空间随机效应-----------------------
xtreg hrate ln_population ln_pdensity gini i.year, re //普通的随机效应回归
spmatrix create contiguity WX if year == 1990 //生成紧邻权重矩阵WX(注意year==1990)
spmatrix export WX using contigx.xls //把空间权重矩阵W输出
spxtregress hrate ln_population ln_pdensity gini i.year, re dvarlag(WX) ///
errorlag(WX) //空间随机效应spatial lag of dv and error
estat impact gini //获得gini的平均效应
spmatrix create idistance MX if year == 1990 //生成距离倒数权重矩阵MX(注意year==1990)
spmatrix dir //显示一下所有的权重矩阵
spxtregress hrate ln_population ln_pdensity c.gini##i.year, re dvarlag(MX) ///
errorlag(MX) //空间随机效应,更换了一个权重矩阵且加入了交叉项
contrasts c.gini#year //检验gini与year交叉项的显著性
estat impact gini if year == 1960 //交叉项显著因此可以得到每一个year的gini效应
estat impact gini if year == 1970
estat impact gini if year == 1980
estat impact gini if year == 1990 //发现gini影响效应是在随着时间增强的
spxtregress hrate ln_population ln_pdensity c.gini##i.year, re sarpanel ///
dvarlag(MX) errorlag(MX) //当errorlag出现时,添加了sarpanel允许个体效应也像误差项那样的空间回归形式
**空间固定效应---------
xtreg hrate ln_population ln_pdensity gini, fe //普通的固定效应回归
spxtregress hrate ln_population ln_pdensity gini, fe dvarlag(WX) //空间固定效应spatial lag of dv
estat impact gini
spxtregress hrate ln_population ln_pdensity gini c.gini#i.year , ///
fe //如果不在每个panel里变动的话,就不能包括在fe模型里, 因为会被省略去
** 我们可以把内存里的权重矩阵删除掉---
local m "W M WX MX MI WI"
foreach x of local m {
spmatrix drop `x'
} //删掉之前的空间权重矩阵
数据由于太大,因此我们放在空间计量研究小组的社群里的,有需要可以到文末“阅读原文”通道获取。