全部版块 我的主页
论坛 计量经济学与统计论坛 五区 计量经济学与统计软件 Stata专版
1243 1
2019-02-28
参考Brandt et al.(2012)的代码,本人在step 80出现问题,系统显示type mismatch,对于这个简单的系统错误,本人利用了部分样本跑了一下代码,发现是step80的问题,但是前后看了,个人觉得并不是代码的问题,亦或是数据的问题?望有相同经历的同学进行解惑。
相关源代码:(相关merge指标有改变,但是思路与代码作者一致)
******************************************
*           *
* STAGE 2: Match Three Consecutive Years *
*           *
******************************************
local i = 1998
  while `i' < 2002{
  local j=`i'+1
  local k=`i'+2

**step 70: create a three-year balanced sample**
use m`i'-m`j'.dta, clear
keep if match_status_`i'_`j'=="1"
keep id`i'  lglenttycd`i' cpynm`i' cprtion`i' prvid`i' idstryid`i' rgster`i' sbjct`i' busns`i' stupyea`i' pdcvlue`i' selvlu`i' idadvlu`i' crntast`i' rcvbl`i' mechnd`i' mnfctd`i' cptast`i' cptastv`i' acdpctn`i' totlast`i' crtlb`i' acpabl`i' ltlb`i' totllb`i' totlpri`i' mopen`i' taxc`i' instp`i' oppft`i' totlpft`i' totlb`i' incmtx`i'
save unmatched`i'.10.dta, replace
use m`i'-m`j'.dta, clear
drop if match_status_`i'_`j'=="1"
gen code=id`j'
sort code
save m`i'-m`j'.10.dta, replace
use m`j'-m`k'.dta, clear
keep if match_status_`j'_`k'=="2"
keep id`k'  lglenttycd`k' cpynm`k' cprtion`k' prvid`k' idstryid`k' rgster`k' sbjct`k' busns`k' stupyea`k' pdcvlue`k' selvlu`k' idadvlu`k' crntast`k' rcvbl`k' mechnd`k' mnfctd`k' cptast`k' cptastv`k' acdpctn`k' totlast`k' crtlb`k' acpabl`k' ltlb`k' totllb`k' totlpri`k' mopen`k' taxc`k' instp`k' oppft`k' totlpft`k' totlb`k' incmtx`k'
save unmatched`k'.10.dta, replace
use m`j'-m`k'.dta, clear
drop if match_status_`j'_`k'=="2"
gen code=id`j'
sort code
save m`j'-m`k'.10.dta, replace
use m`i'-m`j'.10.dta, clear
merge code using m`j'-m`k'.10.dta
drop _merge code
keep if  match_status_`i'_`j'=="3"& match_status_`j'_`k'=="3"
gen match_status_`i'_`k'="3"
gen match_method_`i'_`k'="`j'"
save balanced.m`i'-m`j'-m`k'.dta, replace
**step 80: create files for unmatched `i' firms and `k' firms**

use m`i'-m`j'.10.dta, clear
merge code using m`j'-m`k'.10.dta
drop _merge code
drop if  match_status_`i'_`j'=="3" & match_status_`j'_`k'=="3"
drop if id`i'==""
gen code=id`i'
sort code
save unmatched`i'.15.dta, replace
use unmatched`i'.15.dta, clear
keep id`i'  lglenttycd`i' cpynm`i' cprtion`i' prvid`i' idstryid`i' rgster`i' sbjct`i' busns`i' stupyea`i' pdcvlue`i' selvlu`i' idadvlu`i' crntast`i' rcvbl`i' mechnd`i' mnfctd`i' cptast`i' cptastv`i' acdpctn`i' totlast`i' crtlb`i' acpabl`i' ltlb`i' totllb`i' totlpri`i' mopen`i' taxc`i' instp`i' oppft`i' totlpft`i' totlb`i' incmtx`i'
append using unmatched`i'.10.dta
save unmatched`i'.20.dta, replace

use m`i'-m`j'.10.dta, clear
merge code using m`j'-m`k'.10.dta
drop _merge code
drop if  match_status_`i'_`j'=="3"& match_status_`j'_`k'=="3"
drop if id`k'==""
gen code=id`k'
sort code
save unmatched`k'.15.dta, replace
use unmatched`k'.15.dta, clear
keep id`k'  lglenttycd`k' cpynm`k' cprtion`k' prvid`k' idstryid`k' rgster`k' sbjct`k' busns`k' stupyea`k' pdcvlue`k' selvlu`k' idadvlu`k' crntast`k' rcvbl`k' mechnd`k' mnfctd`k' cptast`k' cptastv`k' acdpctn`k' totlast`k' crtlb`k' acpabl`k' ltlb`k' totllb`k' totlpri`k' mopen`k' taxc`k' instp`k' oppft`k' totlpft`k' totlb`k' incmtx`k'
append using unmatched`k'.10.dta
save unmatched`k'.20.dta, replace
use m`i'-m`j'.10.dta, clear
merge code using m`j'-m`k'.10.dta
drop _merge code
drop if  match_status_`i'_`j'=="3"| match_status_`j'_`k'=="3"
gen code=id`j'
sort code
save unmatched`j'.15.dta, replace
local i = `i' + 1
  }

二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

全部回复
2023-2-25 14:26:03
请问原代码在哪里下载的啊
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群