{smcl}
{txt}{sf}{ul off}{.-}
      name:  {res}<unnamed>
       {txt}log:  {res}E:\2024-00768_数据\2024-00768+日志文件/log_appendix.smcl
  {txt}log type:  {res}smcl
 {txt}opened on:  {res}23 Apr 2025, 16:33:26
{txt}
{com}.         log on 
{txt}(log already on)

{com}.         
.         
. ********************************************************************************
. /*                                                                      变量含义                                                              */
. ********************************************************************************
. /*
>         
> 
>         （1）县级数据中的变量，用于文章的主体分析。在实际分析中可能也会使用其差分、基期值，生成过程详见具体代码：
>         Grain：县粮食产量（10万吨）。
>         lnGDP_pc：按2000年价格指数平减的县实际人均GDP（元/人）的对数值。
>         lnTempr：对数年均气温（摄氏度）。
>         lnRainfall：对数年总降水量（毫米）。
>         Share_PriGDP: 第一产业（农业）GDP占总GDP的百分比。
>         Share_SecGDP：第二产业（工业）GDP占总GDP的百分比。
>         lnGDP_agr_pc: 按2000年价格指数平减的县实际第一产业人均GDP（元/人）的对数值。
>         lnGDP_ind_pc: 按2000年价格指数平减的县实际第二产业人均GDP（元/人）的对数值。
>         lnGDP_serv_pc: 按2000年价格指数平减的县实际第三产业人均GDP（元/人）的对数值。
>         lnGDP_nagr_pc: 按2000年价格指数平减的县实际非农产业（也即第二和第三产业加总）人均GDP（元/人）的对数值。
>         lncstrct_land：县建设用地面积（平方公里）的对数值。
>         lncstrct_land_new：县新增的建设用地面积（平方公里）的对数值。
>         lnfarmland_dcrs：被转化为其他用途的耕地面积（平方公里）的对数值。
>         lnslope_cstrct_land：县建设用地的平均坡度的对数值。
>         lnnum_new_firms：县新注册企业的数量的对数值。
>         share_ov1k_new_firms: 新注册企业中注册资本超过1000万元的比例。
>         lnavgemp_old_firms：县域2003年以前注册的工业企业的平均就业人数。
>         tfp_firms：工业企业的平均全要素生产率取对数。
>         lntrsf_gen：县级政府所收到的一般性财政转移支付收入的对数值。
>         lntrsf_spec：县级政府所收到的专项财政转移支付收入的对数值。
>         lnpub_expd：县级政府的一般预算公共支出的对数值。
>         lnpub_expd_agr：县级政府的农业相关公共支出的对数值。
>         is_zcq：县是否属于粮食主产省的虚拟变量，是=1，否=0。
>         is_phq：县是否属于粮食产销平衡省的虚拟变量，是=1，否=0
>         is_zxq：县是否属于粮食主销省的虚拟变量，是=1，否=0。
>         cqtype：县所属产销区的类型：1=主产区，2=平衡区，3=主销区。
>         region_east: 是否属于东部地区，是=1，否=0。
>         region_mid: 是否属于中部地区，是=1，否=0。
>         region_west: 是否属于西部地区，是=1，否=0。
>         region_noreast: 是否属于东北地区，是=1，否=0。
>         lnemply: 就业总人口数的对数值。
>         emply_shr_pri: 第一产业就业占总就业的百分比。
>         emply_shr_sec: 第二产业就业占总就业的百分比。
>         emply_shr_ter: 第三产业就业占总就业的百分比。
>         GDP_pc: 县按2000年价格平减后的实际人均GDP（元/人）。
>         pop: 县年末总人口（万人）。
>         GDP: 县按2000年价格平减后的实际GDP（万元）。
>         farmland_area：县域耕地总面积（平方公里）。
>         Farmland_share：县域耕地面积占总面积的百分比。
>         Sown_area：县农作物播种面积（万公顷）。
>         shr_potprod_rice：县的潜在水稻总产出占全国水稻潜在总产出的比例。
>         shr_potprod_wheat：县的潜在水稻总产出占全国小麦潜在总产出的比例。
>         shr_potprod_maize：县的潜在水稻总产出占全国玉米潜在总产出的比例。
>         shr_potprod_soybean：县的潜在水稻总产出占全国大豆潜在总产出的比例。
>         shr_potprod_millet：县的潜在水稻总产出占全国谷子潜在总产出的比例。
>         shr_potprod_sorghum：县的潜在水稻总产出占全国高粱潜在总产出的比例。
>         dsim_Grain：按自然禀赋分配的潜在增产量（工具变量）。
>         dsim_Grain_dwm：在构建时去除了小麦和谷子的按自然禀赋分配的潜在增产量（工具变量）。
>         dsim_Grain_nosy：在构建时去除了大豆的按自然禀赋分配的潜在增产量（工具变量）。
>         tarif_shock：2001年县层面按产业结构加总的平均进口关税。
>         sim_Grain：按自然禀赋分配的潜在总产量。
>         potyield_rice：县种植水稻的平均潜在可达单产。
>         lnLight：县平均夜间灯光强度的对数值。
>         lnPDen：县的人口密度对数值。
>         confucious_temple：县孔庙的数量。
>         soe_empshare：期初县域国有企业的就业占比。
>         lnlandinc：县财政与土地出让相关的收入（国有土地使用权出让金收入）的对数值。
>         lnlandexp：县财政与土地出让相关的支出（国有土地使用权出让金支出）的对数值。
> 
>         （2）省级数据中的变量（用于区域增产的描述性统计图1、表I1、核算总体增产成本表4）：
>         grain: 省粮食产量，单位为万吨。
>         gdppc: 省实际人均GDP
>         mpop_per_county: 本省县级行政区的平均人口
>         pop: 省总人口
>         
>         
> */
. 
.         
.         
. 
. 
. ********************************************************************************
. ********************** 图I1.政府对粮食生产的关注度 ******************************
. ********************************************************************************
. 
.         use $working_data/word_freq.dta ,clear
{txt}
{com}. 
.         twoway (connected word_freq_grain year if year>=2000&year<=2023, fcolor(none) lcolor(black) lpattern(solid) lwidth(thin) msymbol(o) msize(medium) mcolor(black) ) ||, xtitle("年份",size(small) alignment(top) margin(small)) xlabel(. 2000 2003 2016 2023,labsize(small)) xline(2003,lcolor(black) lstyle(refline) lwidth(vthin) lpattern(dash)) xline(2016,lcolor(black) lstyle(refline) lwidth(vthin) lpattern(dash)) ytitle("粮食生产相关词频(‰)", size(small) alignment(top) margin(medsmall)) ylabel(,labsize(small)) scheme(s1mono) legend(label(1 "粮食词频") size(small))  subtitle("省级政府工作报告中粮食生产词频",size(medium))
{res}{txt}
{com}.         
.         graph export "$logfiles/figure_I1.png",replace width(1600) height(1200)
{txt}{p 0 4 2}
(file {bf}
E:\2024-00768_数据\2024-00768+日志文件/figure_I1.png{rm}
not found)
{p_end}
{p 0 4 2}
file {bf}
E:\2024-00768_数据\2024-00768+日志文件/figure_I1.png{rm}
saved as
PNG
format
{p_end}

{com}. 
. 
. 
. ********************************************************************************
. **************************** 图I2 .粮食生产在县层面的分化  ***********************
. ********************************************************************************
. 
. 
.         use $working_data\county_panel.dta ,clear
{txt}
{com}. 
.         
.                                         ***--- 变量处理 ---***      
.         
.         bysort year: egen mean_grain = mean(Grain)
{txt}
{com}.         gen Grain_dmean = Grain - mean_grain
{txt}(11,765 missing values generated)

{com}.         
.                                                 ***--- 作图 ---***    
.         
.         twoway kdensity Grain_dmean if year==2003,lpattern(longdash) lwidth(medium) lcolor(gs5) || kdensity Grain_dmean if year==2016,lpattern(solid) lwidth(medium) lcolor(black)||, xtitle("均值中心化粮食产量(十万吨)",size(medlarge)) ytitle("核密度",size(medlarge) margin(medsmall)) xline(0,lcolor(black) lpattern(dash)) legend(label(1 "2003年") label(2 "2016年") ring(0) bplacement(neast) rows(1) size(small)) name(crpdist,replace) title("a.全国", size(Large)) scheme(s1mono) 
{p 0 4 2}
{txt}(note:  named style
Large not found in class
gsize,  default attributes used)
{p_end}
{res}{txt}
{com}.         
.         
.         twoway kdensity Grain_dmean if year==2003&is_zcq==1,lpattern(longdash) lwidth(medium) lcolor(gs5) || kdensity Grain_dmean if year==2016&is_zcq==1,lpattern(solid) lwidth(medium) lcolor(black)||, xtitle("均值中心化粮食产量(十万吨)",size(medlarge)) ytitle("核密度",size(medlarge) margin(medsmall)) xline(0,lcolor(black) lpattern(dash)) legend(label(1 "2003年") label(2 "2016年") ring(0) bplacement(neast) rows(1) size(small)) name(crpdist_zcq,replace) title("b.主产区", size(Large)) scheme(s1mono) ylabel(0(0.1)0.4)
{p 0 4 2}
{txt}(note:  named style
Large not found in class
gsize,  default attributes used)
{p_end}
{res}{txt}
{com}.         
.         graph combine crpdist crpdist_zcq, cols(2) scheme(s1mono) ysize(4cm) xsize(10cm)
{p 0 4 2}
{txt}(note:  named style
Large not found in class
gsize,  default attributes used)
{p_end}
{p 0 4 2}
{txt}(note:  named style
Large not found in class
gsize,  default attributes used)
{p_end}
{res}{txt}
{com}.         graph export "$logfiles/figure_I2.png",replace width(2400) height(1100)
{txt}{p 0 4 2}
(file {bf}
E:\2024-00768_数据\2024-00768+日志文件/figure_I2.png{rm}
not found)
{p_end}
{p 0 4 2}
file {bf}
E:\2024-00768_数据\2024-00768+日志文件/figure_I2.png{rm}
saved as
PNG
format
{p_end}

{com}. 
. 
. 
. 
. 
. ********************************************************************************
. ******************* 表I1 .2003-2016年分区域的粮食增产情况 ************************
. ********************************************************************************
.         
.         
.         use $working_data\province_data.dta ,clear
{txt}
{com}.         capture mkdir "$logfiles/table_I1"
{txt}
{com}.         
.         * 计算各省2003-2016的粮食增产
.         gen is_yr2003 = 1 if year==2003
{txt}(992 missing values generated)

{com}.         gen is_yr2016 = 1 if year==2016
{txt}(992 missing values generated)

{com}.         
.         bysort province_name: egen grain_03 = mean(grain*is_yr2003)
{txt}
{com}.         bysort province_name: egen grain_16 = mean(grain*is_yr2016)
{txt}
{com}.         
.         gen d_grain = grain_16 - grain_03
{txt}
{com}.         
.         * 分别按照省份、产销区和地理区域统计粮食增产，输出三个文件，手动整理后形成最终展示的表格
.         
.         * a.分省
.         preserve
{txt}
{com}.         collapse d_grain if year==2016, by(province_name)
{res}{txt}
{com}.         eststo clear
{txt}
{com}.         gsort - d_grain 
{txt}
{com}.         gen d_grain_fmt = string(round(d_grain,0.001),"%20.3f")  //保留三位小数
{txt}
{com}.         label variable d_grain_fmt "粮食增产(万吨)"
{txt}
{com}.         label variable province_name "省份"
{txt}
{com}.         export excel province_name d_grain_fmt using "$logfiles/table_I1/增产_按省.xlsx", firstrow(varlabels) replace 
{res}{txt}file {bf:E:\2024-00768_数据\2024-00768+日志文件/table_I1/增产_按省.xlsx} saved

{com}.         restore
{txt}
{com}.         
.         
.         
.         * b.分主产区、主销区和平衡区
.         preserve
{txt}
{com}.         collapse (sum) d_grain if year==2016, by(prod_region)
{res}{txt}
{com}.         eststo clear
{txt}
{com}.         gsort - d_grain 
{txt}
{com}.         gen d_grain_fmt = string(round(d_grain,0.001),"%20.3f")  //保留三位小数
{txt}
{com}.         label variable d_grain_fmt "粮食增产(万吨)"
{txt}
{com}.         label variable prod_region "产区"
{txt}
{com}.         export excel prod_region d_grain_fmt using "$logfiles/table_I1/增产_按产区.xlsx", firstrow(varlabels) replace 
{res}{txt}file {bf:E:\2024-00768_数据\2024-00768+日志文件/table_I1/增产_按产区.xlsx} saved

{com}.         restore
{txt}
{com}.                         
.         
.         
.         * c.分地理区域
.         preserve
{txt}
{com}.         collapse (sum) d_grain if year==2016, by(geo_region)
{res}{txt}
{com}.         eststo clear
{txt}
{com}.         gsort - d_grain 
{txt}
{com}.         gen d_grain_fmt = string(round(d_grain,0.001),"%20.3f")  //保留三位小数
{txt}
{com}.         label variable d_grain_fmt "粮食增产(万吨)"
{txt}
{com}.         label variable geo_region "地理区域"
{txt}
{com}.         export excel geo_region d_grain_fmt using "$logfiles/table_I1/增产_按地理区域.xlsx", firstrow(varlabels) replace 
{res}{txt}file {bf:E:\2024-00768_数据\2024-00768+日志文件/table_I1/增产_按地理区域.xlsx} saved

{com}.         restore
{txt}
{com}.         
.         
.         
.         
. *******************************************************************************
. **************** 表A1 .按自然禀赋的增产和实际增产的相关性 ****************
. *******************************************************************************
. 
.         use $working_data\county_panel.dta ,clear
{txt}
{com}.         
.                                                 ***--- 变量处理 ---***      
.         
.         * 生成变量的基期(2003)值
.         gen is_yr2003 = 1 if year==2003
{txt}(58,333 missing values generated)

{com}.         foreach v of varlist Grain lnGDP_pc{c -(}
{txt}  2{com}.                 
.                 bysort county_id (year): egen `v'_03 = mean(`v'*is_yr2003)
{txt}  3{com}.                 
.         {c )-}
{txt}(8,523 missing values generated)
(11,649 missing values generated)

{com}.         
.         
.         * 生成相对基期的差分
.         foreach v of varlist Grain lnGDP_pc{c -(}
{txt}  2{com}.                 
.                 gen d_`v' = `v' - `v'_03
{txt}  3{com}.                 
.         {c )-}
{txt}(13,008 missing values generated)
(16,346 missing values generated)

{com}.         
.         
.                                                 ***--- 回归结果 ---***      
.         
.         
.         * 标记基准回归样本
.         
.         ivreghdfe d_lnGDP_pc lnGDP_pc_03 (d_Grain = dsim_Grain) if year==2016, absorb(city_id) cluster(city_id)
{res}{txt}(dropped 11 {browse "http://scorreia.com/research/singletons.pdf":singleton observations})
{res}{txt}({browse "http://scorreia.com/research/hdfe.pdf":MWFE estimator} converged in 1 iterations)
{res}
{txt}IV (2SLS) estimation
{hline 20}

Estimates efficient for homoskedasticity only
Statistics robust to heteroskedasticity and clustering on city_id

Number of clusters (city_id) = {col 33}{res}   276{txt}{col 55}Number of obs = {res}    1789
{txt}{col 55}F(  2,   275) = {res}   81.69
{txt}{col 55}Prob > F      = {res}  0.0000
{txt}Total (centered) SS     = {res} 129.3586903{txt}{col 55}Centered R2   = {res}  0.1589
{txt}Total (uncentered) SS   = {res} 129.3586903{txt}{col 55}Uncentered R2 = {res}  0.1589
{txt}Residual SS             = {res} 108.8029909{txt}{col 55}Root MSE      = {res}   .2468

{txt}{hline 13}{c TT}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{col 14}{c |}{col 26}    Robust
{col 1}  d_lnGDP_pc{col 14}{c |} Coefficient{col 26}  std. err.{col 38}      t{col 46}   P>|t|{col 54}     [95% con{col 67}f. interval]
{hline 13}{c +}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{space 5}d_Grain {c |}{col 14}{res}{space 2}-.0591131{col 26}{space 2}  .012991{col 37}{space 1}   -4.55{col 46}{space 3}0.000{col 54}{space 4}-.0846876{col 67}{space 3}-.0335386
{txt}{space 1}lnGDP_pc_03 {c |}{col 14}{res}{space 2}-.3047582{col 26}{space 2} .0243734{col 37}{space 1}  -12.50{col 46}{space 3}0.000{col 54}{space 4}-.3527404{col 67}{space 3} -.256776
{txt}{hline 13}{c BT}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{help ivreg2##idtest:Underidentification test} (Kleibergen-Paap rk LM statistic):{res}{col 71}  31.800
{txt}{col 52}Chi-sq({res}1{txt}) P-val =  {res}{col 73}0.0000
{txt}{hline 78}
{help ivreg2##widtest:Weak identification test} (Cragg-Donald Wald F statistic):{res}{col 71} 566.057
{txt}                         (Kleibergen-Paap rk Wald F statistic):{res}{col 71}  62.566
{txt}Stock-Yogo weak ID test critical values:{res}{txt}{col 42}10% maximal IV size{res}{col 73} 16.38
{txt}{col 42}15% maximal IV size{res}{col 73}  8.96
{txt}{col 42}20% maximal IV size{res}{col 73}  6.66
{txt}{col 42}25% maximal IV size{res}{col 73}  5.53
{txt}Source: Stock-Yogo (2005).  Reproduced by permission.
NB: Critical values are for Cragg-Donald F statistic and i.i.d. errors.
{hline 78}
{help ivreg2##overidtests:Hansen J statistic} (overidentification test of all instruments):{res}{col 71}   0.000
{txt}{col 50}(equation exactly identified)
{hline 78}
Instrumented:{col 23}d_Grain
Included instruments:{col 23}lnGDP_pc_03
Excluded instruments:{col 23}dsim_Grain
{help ivreg2##partial:Partialled-out}:{col 23}_cons
{col 23}nb: total SS, model F and R2s are after partialling-out;
{col 23}    any {help ivreg2##s_small:small-sample adjustments} include partialled-out
{col 23}    variables in regressor count K
{hline 78}
{res}
{txt}Absorbed degrees of freedom:
{res}{col 1}{text}{hline 13}{c TT}{hline 12}{hline 12}{hline 14}{hline 1}{c TRC}
{col 1}{text} Absorbed FE{col 14}{c |} Categories{col 27} - Redundant{col 39}  = Num. Coefs{col 54}{c |}
{res}{col 1}{text}{hline 13}{c +}{hline 12}{hline 12}{hline 14}{hline 1}{c RT}
{col 1}{text}     city_id{col 14}{c |}{space 1}      276{col 27}{space 1}      276{col 39}{result}{space 1}        0{col 53}{text}*{col 54}{c |}
{res}{col 1}{text}{hline 13}{c BT}{hline 12}{hline 12}{hline 14}{hline 1}{c BRC}
* = FE nested within cluster; treated as redundant for DoF computation
{res}{txt}
{com}.         gen baseline_sample = e(sample)
{txt}
{com}.         
.         
.         * 用检验实际增产与潜在增产(用不同IV代表)的关系
.         
.         * (1). 基准IV
.         reghdfe d_Grain dsim_Grain lnGDP_pc_03 if baseline_sample==1, absorb(city_id) vce(cluster city_id)
{res}{txt}({browse "http://scorreia.com/research/hdfe.pdf":MWFE estimator} converged in 1 iterations)
{res}
{txt}HDFE Linear regression{col 51}Number of obs{col 67}= {res}     1,789
{txt}Absorbing 1 HDFE group{col 51}F({res}   2{txt},{res}    275{txt}){col 67}= {res}     31.51
{txt}Statistics robust to heteroskedasticity{col 51}Prob > F{col 67}= {res}    0.0000
{txt}{col 51}R-squared{col 67}= {res}    0.7702
{txt}{col 51}Adj R-squared{col 67}= {res}    0.7281
{txt}{col 51}Within R-sq.{col 67}= {res}    0.2623
{txt}{col 1}Number of clusters ({res}city_id{txt}) {col 30}= {res}       276{txt}{col 51}Root MSE{col 67}= {res}    1.0099

{txt}{ralign 78:(Std. err. adjusted for {res:276} clusters in {res:city_id})}
{hline 13}{c TT}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{col 14}{c |}{col 26}    Robust
{col 1}     d_Grain{col 14}{c |} Coefficient{col 26}  std. err.{col 38}      t{col 46}   P>|t|{col 54}     [95% con{col 67}f. interval]
{hline 13}{c +}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{space 2}dsim_Grain {c |}{col 14}{res}{space 2} 1.246968{col 26}{space 2} .1576471{col 37}{space 1}    7.91{col 46}{space 3}0.000{col 54}{space 4} .9366191{col 67}{space 3} 1.557316
{txt}{space 1}lnGDP_pc_03 {c |}{col 14}{res}{space 2}-.3008294{col 26}{space 2} .1024553{col 37}{space 1}   -2.94{col 46}{space 3}0.004{col 54}{space 4}-.5025257{col 67}{space 3} -.099133
{txt}{space 7}_cons {c |}{col 14}{res}{space 2} 2.609543{col 26}{space 2} .8530037{col 37}{space 1}    3.06{col 46}{space 3}0.002{col 54}{space 4} .9302963{col 67}{space 3}  4.28879
{txt}{hline 13}{c BT}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{res}
{txt}Absorbed degrees of freedom:
{res}{col 1}{text}{hline 13}{c TT}{hline 12}{hline 12}{hline 14}{hline 1}{c TRC}
{col 1}{text} Absorbed FE{col 14}{c |} Categories{col 27} - Redundant{col 39}  = Num. Coefs{col 54}{c |}
{res}{col 1}{text}{hline 13}{c +}{hline 12}{hline 12}{hline 14}{hline 1}{c RT}
{col 1}{text}     city_id{col 14}{c |}{space 1}      276{col 27}{space 1}      276{col 39}{result}{space 1}        0{col 53}{text}*{col 54}{c |}
{res}{col 1}{text}{hline 13}{c BT}{hline 12}{hline 12}{hline 14}{hline 1}{c BRC}
* = FE nested within cluster; treated as redundant for DoF computation
{res}{txt}
{com}.         
.         outreg2 using "$logfiles/table_A1", replace excel nocons depvar dec(3) keep(dsim_Grain)
{txt}{browse `"E:\2024-00768_数据\2024-00768+日志文件/table_A1.xml"'}
{browse `"E:\2024-00768_数据"' :dir}{com} : {txt}{stata `"seeout using "E:\2024-00768_数据\2024-00768+日志文件/table_A1.txt""':seeout}

{com}.         
.         * (2). 四种主粮
.         
.         reghdfe d_Grain dsim_mGrain lnGDP_pc_03 if baseline_sample==1, absorb(city_id) vce(cluster city_id)
{res}{txt}({browse "http://scorreia.com/research/hdfe.pdf":MWFE estimator} converged in 1 iterations)
{res}
{txt}HDFE Linear regression{col 51}Number of obs{col 67}= {res}     1,789
{txt}Absorbing 1 HDFE group{col 51}F({res}   2{txt},{res}    275{txt}){col 67}= {res}     31.62
{txt}Statistics robust to heteroskedasticity{col 51}Prob > F{col 67}= {res}    0.0000
{txt}{col 51}R-squared{col 67}= {res}    0.7701
{txt}{col 51}Adj R-squared{col 67}= {res}    0.7280
{txt}{col 51}Within R-sq.{col 67}= {res}    0.2619
{txt}{col 1}Number of clusters ({res}city_id{txt}) {col 30}= {res}       276{txt}{col 51}Root MSE{col 67}= {res}    1.0101

{txt}{ralign 78:(Std. err. adjusted for {res:276} clusters in {res:city_id})}
{hline 13}{c TT}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{col 14}{c |}{col 26}    Robust
{col 1}     d_Grain{col 14}{c |} Coefficient{col 26}  std. err.{col 38}      t{col 46}   P>|t|{col 54}     [95% con{col 67}f. interval]
{hline 13}{c +}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{space 1}dsim_mGrain {c |}{col 14}{res}{space 2} 1.250692{col 26}{space 2} .1578357{col 37}{space 1}    7.92{col 46}{space 3}0.000{col 54}{space 4} .9399724{col 67}{space 3} 1.561412
{txt}{space 1}lnGDP_pc_03 {c |}{col 14}{res}{space 2}-.3008603{col 26}{space 2} .1025651{col 37}{space 1}   -2.93{col 46}{space 3}0.004{col 54}{space 4}-.5027728{col 67}{space 3}-.0989478
{txt}{space 7}_cons {c |}{col 14}{res}{space 2} 2.609621{col 26}{space 2} .8541265{col 37}{space 1}    3.06{col 46}{space 3}0.002{col 54}{space 4} .9281639{col 67}{space 3} 4.291079
{txt}{hline 13}{c BT}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{res}
{txt}Absorbed degrees of freedom:
{res}{col 1}{text}{hline 13}{c TT}{hline 12}{hline 12}{hline 14}{hline 1}{c TRC}
{col 1}{text} Absorbed FE{col 14}{c |} Categories{col 27} - Redundant{col 39}  = Num. Coefs{col 54}{c |}
{res}{col 1}{text}{hline 13}{c +}{hline 12}{hline 12}{hline 14}{hline 1}{c RT}
{col 1}{text}     city_id{col 14}{c |}{space 1}      276{col 27}{space 1}      276{col 39}{result}{space 1}        0{col 53}{text}*{col 54}{c |}
{res}{col 1}{text}{hline 13}{c BT}{hline 12}{hline 12}{hline 14}{hline 1}{c BRC}
* = FE nested within cluster; treated as redundant for DoF computation
{res}{txt}
{com}.         
.         outreg2 using "$logfiles/table_A1", append excel nocons depvar dec(3) keep(dsim_mGrain)
{txt}{browse `"E:\2024-00768_数据\2024-00768+日志文件/table_A1.xml"'}
{browse `"E:\2024-00768_数据"' :dir}{com} : {txt}{stata `"seeout using "E:\2024-00768_数据\2024-00768+日志文件/table_A1.txt""':seeout}

{com}.         
.         * (3). 三种主粮
.         
.         reghdfe d_Grain dsim_mmGrain lnGDP_pc_03 if baseline_sample==1, absorb(city_id) vce(cluster city_id)
{res}{txt}({browse "http://scorreia.com/research/hdfe.pdf":MWFE estimator} converged in 1 iterations)
{res}
{txt}HDFE Linear regression{col 51}Number of obs{col 67}= {res}     1,789
{txt}Absorbing 1 HDFE group{col 51}F({res}   2{txt},{res}    275{txt}){col 67}= {res}     31.61
{txt}Statistics robust to heteroskedasticity{col 51}Prob > F{col 67}= {res}    0.0000
{txt}{col 51}R-squared{col 67}= {res}    0.7712
{txt}{col 51}Adj R-squared{col 67}= {res}    0.7293
{txt}{col 51}Within R-sq.{col 67}= {res}    0.2655
{txt}{col 1}Number of clusters ({res}city_id{txt}) {col 30}= {res}       276{txt}{col 51}Root MSE{col 67}= {res}    1.0077

{txt}{ralign 78:(Std. err. adjusted for {res:276} clusters in {res:city_id})}
{hline 13}{c TT}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{col 14}{c |}{col 26}    Robust
{col 1}     d_Grain{col 14}{c |} Coefficient{col 26}  std. err.{col 38}      t{col 46}   P>|t|{col 54}     [95% con{col 67}f. interval]
{hline 13}{c +}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
dsim_mmGrain {c |}{col 14}{res}{space 2} 1.238842{col 26}{space 2} .1564576{col 37}{space 1}    7.92{col 46}{space 3}0.000{col 54}{space 4} .9308352{col 67}{space 3} 1.546849
{txt}{space 1}lnGDP_pc_03 {c |}{col 14}{res}{space 2}-.3006435{col 26}{space 2} .1025074{col 37}{space 1}   -2.93{col 46}{space 3}0.004{col 54}{space 4}-.5024424{col 67}{space 3}-.0988446
{txt}{space 7}_cons {c |}{col 14}{res}{space 2} 2.603292{col 26}{space 2} .8543135{col 37}{space 1}    3.05{col 46}{space 3}0.003{col 54}{space 4} .9214664{col 67}{space 3} 4.285117
{txt}{hline 13}{c BT}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{res}
{txt}Absorbed degrees of freedom:
{res}{col 1}{text}{hline 13}{c TT}{hline 12}{hline 12}{hline 14}{hline 1}{c TRC}
{col 1}{text} Absorbed FE{col 14}{c |} Categories{col 27} - Redundant{col 39}  = Num. Coefs{col 54}{c |}
{res}{col 1}{text}{hline 13}{c +}{hline 12}{hline 12}{hline 14}{hline 1}{c RT}
{col 1}{text}     city_id{col 14}{c |}{space 1}      276{col 27}{space 1}      276{col 39}{result}{space 1}        0{col 53}{text}*{col 54}{c |}
{res}{col 1}{text}{hline 13}{c BT}{hline 12}{hline 12}{hline 14}{hline 1}{c BRC}
* = FE nested within cluster; treated as redundant for DoF computation
{res}{txt}
{com}.         
.         outreg2 using "$logfiles/table_A1", append excel nocons depvar dec(3) keep(dsim_mmGrain)
{txt}{browse `"E:\2024-00768_数据\2024-00768+日志文件/table_A1.xml"'}
{browse `"E:\2024-00768_数据"' :dir}{com} : {txt}{stata `"seeout using "E:\2024-00768_数据\2024-00768+日志文件/table_A1.txt""':seeout}

{com}.         
.         * (4). 所有作物
.         reghdfe d_Grain dsim_allcrop lnGDP_pc_03 if baseline_sample==1, absorb(city_id) vce(cluster city_id)
{res}{txt}({browse "http://scorreia.com/research/hdfe.pdf":MWFE estimator} converged in 1 iterations)
{res}
{txt}HDFE Linear regression{col 51}Number of obs{col 67}= {res}     1,789
{txt}Absorbing 1 HDFE group{col 51}F({res}   2{txt},{res}    275{txt}){col 67}= {res}     30.68
{txt}Statistics robust to heteroskedasticity{col 51}Prob > F{col 67}= {res}    0.0000
{txt}{col 51}R-squared{col 67}= {res}    0.7713
{txt}{col 51}Adj R-squared{col 67}= {res}    0.7293
{txt}{col 51}Within R-sq.{col 67}= {res}    0.2656
{txt}{col 1}Number of clusters ({res}city_id{txt}) {col 30}= {res}       276{txt}{col 51}Root MSE{col 67}= {res}    1.0076

{txt}{ralign 78:(Std. err. adjusted for {res:276} clusters in {res:city_id})}
{hline 13}{c TT}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{col 14}{c |}{col 26}    Robust
{col 1}     d_Grain{col 14}{c |} Coefficient{col 26}  std. err.{col 38}      t{col 46}   P>|t|{col 54}     [95% con{col 67}f. interval]
{hline 13}{c +}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
dsim_allcrop {c |}{col 14}{res}{space 2} 1.219069{col 26}{space 2} .1559158{col 37}{space 1}    7.82{col 46}{space 3}0.000{col 54}{space 4} .9121288{col 67}{space 3} 1.526009
{txt}{space 1}lnGDP_pc_03 {c |}{col 14}{res}{space 2}-.2938736{col 26}{space 2} .1003154{col 37}{space 1}   -2.93{col 46}{space 3}0.004{col 54}{space 4}-.4913574{col 67}{space 3}-.0963898
{txt}{space 7}_cons {c |}{col 14}{res}{space 2} 2.538424{col 26}{space 2} .8306873{col 37}{space 1}    3.06{col 46}{space 3}0.002{col 54}{space 4} .9031102{col 67}{space 3} 4.173738
{txt}{hline 13}{c BT}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{res}
{txt}Absorbed degrees of freedom:
{res}{col 1}{text}{hline 13}{c TT}{hline 12}{hline 12}{hline 14}{hline 1}{c TRC}
{col 1}{text} Absorbed FE{col 14}{c |} Categories{col 27} - Redundant{col 39}  = Num. Coefs{col 54}{c |}
{res}{col 1}{text}{hline 13}{c +}{hline 12}{hline 12}{hline 14}{hline 1}{c RT}
{col 1}{text}     city_id{col 14}{c |}{space 1}      276{col 27}{space 1}      276{col 39}{result}{space 1}        0{col 53}{text}*{col 54}{c |}
{res}{col 1}{text}{hline 13}{c BT}{hline 12}{hline 12}{hline 14}{hline 1}{c BRC}
* = FE nested within cluster; treated as redundant for DoF computation
{res}{txt}
{com}.         
.         outreg2 using "$logfiles/table_A1", append excel nocons depvar dec(3) keep(dsim_allcrop)
{txt}{browse `"E:\2024-00768_数据\2024-00768+日志文件/table_A1.xml"'}
{browse `"E:\2024-00768_数据"' :dir}{com} : {txt}{stata `"seeout using "E:\2024-00768_数据\2024-00768+日志文件/table_A1.txt""':seeout}

{com}.         
.         
.         
.         
.                 
.         
.         
. ********************************************************************************
. *********************** 表A2 .主要变量的描述性统计 *****************************
. ********************************************************************************
. 
.         use $working_data\county_panel.dta ,clear
{txt}
{com}.         
. 
. 
.         * 转换变量单位,便于展示
.         * 比例变为百分比
.         foreach v of varlist Share_PriGDP Share_SecGDP share_ov1k_new_firms{c -(}
{txt}  2{com}.                 
.                 gen `v'_pct = `v'*100
{txt}  3{com}.                 
.         {c )-}
{txt}(10,992 missing values generated)
(10,731 missing values generated)
(10,873 missing values generated)

{com}.         
.         * 产量由十万吨->万吨
.         replace dsim_Grain = dsim_Grain*10
{txt}(52,608 real changes made)

{com}.         replace Grain = Grain*10
{txt}(49,421 real changes made)

{com}.         
.         
.         global vlist lnGDP_pc lnGDP_agr_pc lnGDP_ind_pc lnGDP_serv_pc lncstrct_land lnavgemp_old_firms lnpub_expd lnpub_expd_agr Grain dsim_Grain Share_PriGDP_pct Share_SecGDP_pct lnRainfall lnTempr
{txt}
{com}.         
.         * 样本期
.         keep if year==2003|year==2016
{txt}(55,788 observations deleted)

{com}.         * 保持和回归样本一致
.         drop if Grain==.|dsim_Grain==.|lnGDP_pc==.
{txt}(1,350 observations deleted)

{com}.         
.         eststo clear
{txt}
{com}.         estpost tabstat $vlist, statistics(mean sd n min max) columns(statistics)

{txt}Summary statistics: mean sd count min max
     for variables: lnGDP_pc lnGDP_agr_pc lnGDP_ind_pc lnGDP_serv_pc lncstrct_land lnavgemp_old_firms lnpub_expd lnpub_expd_agr Grain dsim_Grain Share_PriGDP_pct Share_SecGDP_pct lnRainfall lnTempr

{space 0}{space 0}{ralign 12:}{space 1}{c |}{space 1}{ralign 9:e(mean)}{space 1}{space 1}{ralign 9:e(sd)}{space 1}{space 1}{ralign 9:e(count)}{space 1}{space 1}{ralign 9:e(min)}{space 1}{space 1}{ralign 9:e(max)}{space 1}
{space 0}{hline 13}{c   +}{hline 11}{hline 11}{hline 11}{hline 11}{hline 11}
{space 0}{space 0}{ralign 12:lnGDP_pc}{space 1}{c |}{space 1}{ralign 9:{res:{sf: 9.316187}}}{space 1}{space 1}{ralign 9:{res:{sf: .9851727}}}{space 1}{space 1}{ralign 9:{res:{sf:     4099}}}{space 1}{space 1}{ralign 9:{res:{sf: 6.691348}}}{space 1}{space 1}{ralign 9:{res:{sf:  12.6648}}}{space 1}
{space 0}{space 0}{ralign 12:lnGDP_agr_pc}{space 1}{c |}{space 1}{ralign 9:{res:{sf:  7.62987}}}{space 1}{space 1}{ralign 9:{res:{sf: .7947355}}}{space 1}{space 1}{ralign 9:{res:{sf:     4068}}}{space 1}{space 1}{ralign 9:{res:{sf:-1.392521}}}{space 1}{space 1}{ralign 9:{res:{sf: 10.81288}}}{space 1}
{space 0}{space 0}{ralign 12:lnGDP_ind_pc}{space 1}{c |}{space 1}{ralign 9:{res:{sf: 8.293817}}}{space 1}{space 1}{ralign 9:{res:{sf: 1.248435}}}{space 1}{space 1}{ralign 9:{res:{sf:     4066}}}{space 1}{space 1}{ralign 9:{res:{sf: 3.976228}}}{space 1}{space 1}{ralign 9:{res:{sf: 12.38287}}}{space 1}
{space 0}{space 0}{ralign 12:lnGDP_serv~c}{space 1}{c |}{space 1}{ralign 9:{res:{sf: 8.254084}}}{space 1}{space 1}{ralign 9:{res:{sf:   1.0699}}}{space 1}{space 1}{ralign 9:{res:{sf:     4066}}}{space 1}{space 1}{ralign 9:{res:{sf: 4.146728}}}{space 1}{space 1}{ralign 9:{res:{sf: 11.94887}}}{space 1}
{space 0}{space 0}{ralign 12:lncstrct_l~d}{space 1}{c |}{space 1}{ralign 9:{res:{sf: 3.138811}}}{space 1}{space 1}{ralign 9:{res:{sf: 2.037413}}}{space 1}{space 1}{ralign 9:{res:{sf:     4012}}}{space 1}{space 1}{ralign 9:{res:{sf:  -7.0916}}}{space 1}{space 1}{ralign 9:{res:{sf: 6.682402}}}{space 1}
{space 0}{space 0}{ralign 12:lnavgemp_o~s}{space 1}{c |}{space 1}{ralign 9:{res:{sf: 5.476278}}}{space 1}{space 1}{ralign 9:{res:{sf: .5248438}}}{space 1}{space 1}{ralign 9:{res:{sf:     1686}}}{space 1}{space 1}{ralign 9:{res:{sf: 2.639057}}}{space 1}{space 1}{ralign 9:{res:{sf:  7.62046}}}{space 1}
{space 0}{space 0}{ralign 12:lnpub_expd}{space 1}{c |}{space 1}{ralign 9:{res:{sf: 9.973422}}}{space 1}{space 1}{ralign 9:{res:{sf: .6604007}}}{space 1}{space 1}{ralign 9:{res:{sf:     1770}}}{space 1}{space 1}{ralign 9:{res:{sf: 7.683403}}}{space 1}{space 1}{ralign 9:{res:{sf: 12.52338}}}{space 1}
{space 0}{space 0}{ralign 12:lnpub_expd~r}{space 1}{c |}{space 1}{ralign 9:{res:{sf: 6.890878}}}{space 1}{space 1}{ralign 9:{res:{sf: .8348552}}}{space 1}{space 1}{ralign 9:{res:{sf:     1770}}}{space 1}{space 1}{ralign 9:{res:{sf: 3.135494}}}{space 1}{space 1}{ralign 9:{res:{sf: 9.676085}}}{space 1}
{space 0}{space 0}{ralign 12:Grain}{space 1}{c |}{space 1}{ralign 9:{res:{sf:   22.943}}}{space 1}{space 1}{ralign 9:{res:{sf: 26.39315}}}{space 1}{space 1}{ralign 9:{res:{sf:     4099}}}{space 1}{space 1}{ralign 9:{res:{sf:    .0007}}}{space 1}{space 1}{ralign 9:{res:{sf: 339.3036}}}{space 1}
{space 0}{space 0}{ralign 12:dsim_Grain}{space 1}{c |}{space 1}{ralign 9:{res:{sf: 3.956244}}}{space 1}{space 1}{ralign 9:{res:{sf: 6.815039}}}{space 1}{space 1}{ralign 9:{res:{sf:     4099}}}{space 1}{space 1}{ralign 9:{res:{sf:        0}}}{space 1}{space 1}{ralign 9:{res:{sf: 81.13281}}}{space 1}
{space 0}{space 0}{ralign 12:Share_PriG~t}{space 1}{c |}{space 1}{ralign 9:{res:{sf: 24.12724}}}{space 1}{space 1}{ralign 9:{res:{sf: 13.96899}}}{space 1}{space 1}{ralign 9:{res:{sf:     4068}}}{space 1}{space 1}{ralign 9:{res:{sf:  .000772}}}{space 1}{space 1}{ralign 9:{res:{sf: 82.04451}}}{space 1}
{space 0}{space 0}{ralign 12:Share_SecG~t}{space 1}{c |}{space 1}{ralign 9:{res:{sf: 39.51196}}}{space 1}{space 1}{ralign 9:{res:{sf: 14.92919}}}{space 1}{space 1}{ralign 9:{res:{sf:     4066}}}{space 1}{space 1}{ralign 9:{res:{sf: 1.320748}}}{space 1}{space 1}{ralign 9:{res:{sf: 89.52265}}}{space 1}
{space 0}{space 0}{ralign 12:lnRainfall}{space 1}{c |}{space 1}{ralign 9:{res:{sf: 6.827344}}}{space 1}{space 1}{ralign 9:{res:{sf: .5917763}}}{space 1}{space 1}{ralign 9:{res:{sf:     4099}}}{space 1}{space 1}{ralign 9:{res:{sf: 3.572868}}}{space 1}{space 1}{ralign 9:{res:{sf: 8.144443}}}{space 1}
{space 0}{space 0}{ralign 12:lnTempr}{space 1}{c |}{space 1}{ralign 9:{res:{sf:  2.52593}}}{space 1}{space 1}{ralign 9:{res:{sf: .5043226}}}{space 1}{space 1}{ralign 9:{res:{sf:     4079}}}{space 1}{space 1}{ralign 9:{res:{sf: -1.92679}}}{space 1}{space 1}{ralign 9:{res:{sf: 3.268482}}}{space 1}

{com}.         matrix sm_mean  = e(mean)
{txt}
{com}.         matrix sm_sd = e(sd)
{txt}
{com}.         matrix sm_n = e(count)
{txt}
{com}.         matrix sm_min = e(min)
{txt}
{com}.         matrix sm_max = e(max)
{txt}
{com}.         
.         matrix colnames sm_mean = $vlist
{txt}
{com}.         matrix colnames sm_sd = $vlist
{txt}
{com}.         matrix colnames sm_n = $vlist
{txt}
{com}.         matrix colnames sm_min = $vlist
{txt}
{com}.         matrix colnames sm_max = $vlist
{txt}
{com}.         
.         esttab using "$logfiles/table_A2.rtf" ,cells("mean(fmt(%20.3f) label(Mean)) sd(fmt(%20.3f) label(Std.dev.)) count(fmt(%g) label(Obs.)) min(fmt(%20.3f) label(Min)) max(fmt(%20.3f) label(Max))") noobs nostar nonumbers nomtitles replace 
{res}{txt}{p 0 4 2}
(file {bf}
E:\2024-00768_数据\2024-00768+日志文件/table_A2.rtf{rm}
not found)
{p_end}
{res}{txt}(output written to {browse  `"E:\2024-00768_数据\2024-00768+日志文件/table_A2.rtf"'})

{com}. 
. 
. 
. 
.         
. ********************************************************************************
. *************************** 表A3.粮食增产与劳动力配置 ***************************
. ********************************************************************************
. 
. 
.         use $working_data/census_data.dta ,clear
{txt}
{com}. 
.         
.                                                 ***--- 变量处理 ---***      
.         
.         * 受限于普查数据可得性，以2000年作为基期
.         gen is_yr2000 = 1 if year==2000
{txt}(5,675 missing values generated)

{com}.         foreach v of varlist Grain lnGDP_pc lnemply emply_shr*{c -(}
{txt}  2{com}.                 
.                 bysort county_id (year): egen `v'_00 = mean(`v'*is_yr2000)
{txt}  3{com}.                 
.         {c )-}
{txt}(2,191 missing values generated)
(3,181 missing values generated)
(576 missing values generated)
(576 missing values generated)
(576 missing values generated)
(576 missing values generated)

{com}.         
.         
.         * 生成相对基期的差分
.         foreach v of varlist Grain lnemply emply_shr_pri emply_shr_sec emply_shr_ter{c -(}
{txt}  2{com}.                 
.                 gen d_`v' = `v' - `v'_00
{txt}  3{com}.                 
.         {c )-}
{txt}(3,291 missing values generated)
(671 missing values generated)
(3,195 missing values generated)
(3,200 missing values generated)
(3,196 missing values generated)

{com}.         
.         
. 
.                                                 ***--- 逐年差分估计 ---***
.                 
.         
.         foreach y of varlist d_lnemply d_emply_shr_pri d_emply_shr_sec d_emply_shr_ter{c -(}
{txt}  2{com}.                 
.                 ivreghdfe `y' lnGDP_pc_00 (d_Grain = dsim_Grain) if year==2010, absorb(city_id) vce(cluster city_id)
{txt}  3{com}.                 outreg2 using "$logfiles/table_A3", ctitle(`y') addtext(Controls, Y, City FE, Y) append excel nocons nor2 depvar addstat(K-P Wald F stat, e(rkf)) keep(d_Grain) adec(3) dec(3)
{txt}  4{com}.                 
.                 
.         {c )-}
{res}{txt}(dropped 18 {browse "http://scorreia.com/research/singletons.pdf":singleton observations})
{res}{txt}({browse "http://scorreia.com/research/hdfe.pdf":MWFE estimator} converged in 1 iterations)
{res}
{txt}IV (2SLS) estimation
{hline 20}

Estimates efficient for homoskedasticity only
Statistics robust to heteroskedasticity and clustering on city_id

Number of clusters (city_id) = {col 33}{res}   262{txt}{col 55}Number of obs = {res}    1621
{txt}{col 55}F(  2,   261) = {res}   12.22
{txt}{col 55}Prob > F      = {res}  0.0000
{txt}Total (centered) SS     = {res} 22.36155312{txt}{col 55}Centered R2   = {res}  0.0411
{txt}Total (uncentered) SS   = {res} 22.36155312{txt}{col 55}Uncentered R2 = {res}  0.0411
{txt}Residual SS             = {res} 21.44348428{txt}{col 55}Root MSE      = {res}   .1151

{txt}{hline 13}{c TT}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{col 14}{c |}{col 26}    Robust
{col 1}   d_lnemply{col 14}{c |} Coefficient{col 26}  std. err.{col 38}      t{col 46}   P>|t|{col 54}     [95% con{col 67}f. interval]
{hline 13}{c +}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{space 5}d_Grain {c |}{col 14}{res}{space 2} .0064774{col 26}{space 2}  .005699{col 37}{space 1}    1.14{col 46}{space 3}0.257{col 54}{space 4}-.0047445{col 67}{space 3} .0176993
{txt}{space 1}lnGDP_pc_00 {c |}{col 14}{res}{space 2} .0666097{col 26}{space 2} .0136562{col 37}{space 1}    4.88{col 46}{space 3}0.000{col 54}{space 4} .0397193{col 67}{space 3} .0935001
{txt}{hline 13}{c BT}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{help ivreg2##idtest:Underidentification test} (Kleibergen-Paap rk LM statistic):{res}{col 71}  18.133
{txt}{col 52}Chi-sq({res}1{txt}) P-val =  {res}{col 73}0.0000
{txt}{hline 78}
{help ivreg2##widtest:Weak identification test} (Cragg-Donald Wald F statistic):{res}{col 71} 531.257
{txt}                         (Kleibergen-Paap rk Wald F statistic):{res}{col 71}  39.424
{txt}Stock-Yogo weak ID test critical values:{res}{txt}{col 42}10% maximal IV size{res}{col 73} 16.38
{txt}{col 42}15% maximal IV size{res}{col 73}  8.96
{txt}{col 42}20% maximal IV size{res}{col 73}  6.66
{txt}{col 42}25% maximal IV size{res}{col 73}  5.53
{txt}Source: Stock-Yogo (2005).  Reproduced by permission.
NB: Critical values are for Cragg-Donald F statistic and i.i.d. errors.
{hline 78}
{help ivreg2##overidtests:Hansen J statistic} (overidentification test of all instruments):{res}{col 71}   0.000
{txt}{col 50}(equation exactly identified)
{hline 78}
Instrumented:{col 23}d_Grain
Included instruments:{col 23}lnGDP_pc_00
Excluded instruments:{col 23}dsim_Grain
{help ivreg2##partial:Partialled-out}:{col 23}_cons
{col 23}nb: total SS, model F and R2s are after partialling-out;
{col 23}    any {help ivreg2##s_small:small-sample adjustments} include partialled-out
{col 23}    variables in regressor count K
{hline 78}
{res}
{txt}Absorbed degrees of freedom:
{res}{col 1}{text}{hline 13}{c TT}{hline 12}{hline 12}{hline 14}{hline 1}{c TRC}
{col 1}{text} Absorbed FE{col 14}{c |} Categories{col 27} - Redundant{col 39}  = Num. Coefs{col 54}{c |}
{res}{col 1}{text}{hline 13}{c +}{hline 12}{hline 12}{hline 14}{hline 1}{c RT}
{col 1}{text}     city_id{col 14}{c |}{space 1}      262{col 27}{space 1}      262{col 39}{result}{space 1}        0{col 53}{text}*{col 54}{c |}
{res}{col 1}{text}{hline 13}{c BT}{hline 12}{hline 12}{hline 14}{hline 1}{c BRC}
* = FE nested within cluster; treated as redundant for DoF computation
{res}{txt}{browse `"E:\2024-00768_数据\2024-00768+日志文件/table_A3.xml"'}
{browse `"E:\2024-00768_数据"' :dir}{com} : {txt}{stata `"seeout using "E:\2024-00768_数据\2024-00768+日志文件/table_A3.txt""':seeout}
{res}{txt}(dropped 18 {browse "http://scorreia.com/research/singletons.pdf":singleton observations})
{res}{txt}({browse "http://scorreia.com/research/hdfe.pdf":MWFE estimator} converged in 1 iterations)
{res}
{txt}IV (2SLS) estimation
{hline 20}

Estimates efficient for homoskedasticity only
Statistics robust to heteroskedasticity and clustering on city_id

Number of clusters (city_id) = {col 33}{res}   262{txt}{col 55}Number of obs = {res}    1620
{txt}{col 55}F(  2,   261) = {res}    1.58
{txt}{col 55}Prob > F      = {res}  0.2078
{txt}Total (centered) SS     = {res} 66321.34676{txt}{col 55}Centered R2   = {res} -0.0012
{txt}Total (uncentered) SS   = {res} 66321.34676{txt}{col 55}Uncentered R2 = {res} -0.0012
{txt}Residual SS             = {res} 66400.11031{txt}{col 55}Root MSE      = {res}   6.408

{txt}{hline 13}{c TT}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{col 14}{c |}{col 26}    Robust
{col 1}d_emply_sh~i{col 14}{c |} Coefficient{col 26}  std. err.{col 38}      t{col 46}   P>|t|{col 54}     [95% con{col 67}f. interval]
{hline 13}{c +}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{space 5}d_Grain {c |}{col 14}{res}{space 2} .2829269{col 26}{space 2}  .278924{col 37}{space 1}    1.01{col 46}{space 3}0.311{col 54}{space 4}-.2663008{col 67}{space 3} .8321546
{txt}{space 1}lnGDP_pc_00 {c |}{col 14}{res}{space 2}-.8156903{col 26}{space 2}  .545827{col 37}{space 1}   -1.49{col 46}{space 3}0.136{col 54}{space 4}-1.890475{col 67}{space 3} .2590948
{txt}{hline 13}{c BT}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{help ivreg2##idtest:Underidentification test} (Kleibergen-Paap rk LM statistic):{res}{col 71}  18.132
{txt}{col 52}Chi-sq({res}1{txt}) P-val =  {res}{col 73}0.0000
{txt}{hline 78}
{help ivreg2##widtest:Weak identification test} (Cragg-Donald Wald F statistic):{res}{col 71} 530.919
{txt}                         (Kleibergen-Paap rk Wald F statistic):{res}{col 71}  39.422
{txt}Stock-Yogo weak ID test critical values:{res}{txt}{col 42}10% maximal IV size{res}{col 73} 16.38
{txt}{col 42}15% maximal IV size{res}{col 73}  8.96
{txt}{col 42}20% maximal IV size{res}{col 73}  6.66
{txt}{col 42}25% maximal IV size{res}{col 73}  5.53
{txt}Source: Stock-Yogo (2005).  Reproduced by permission.
NB: Critical values are for Cragg-Donald F statistic and i.i.d. errors.
{hline 78}
{help ivreg2##overidtests:Hansen J statistic} (overidentification test of all instruments):{res}{col 71}   0.000
{txt}{col 50}(equation exactly identified)
{hline 78}
Instrumented:{col 23}d_Grain
Included instruments:{col 23}lnGDP_pc_00
Excluded instruments:{col 23}dsim_Grain
{help ivreg2##partial:Partialled-out}:{col 23}_cons
{col 23}nb: total SS, model F and R2s are after partialling-out;
{col 23}    any {help ivreg2##s_small:small-sample adjustments} include partialled-out
{col 23}    variables in regressor count K
{hline 78}
{res}
{txt}Absorbed degrees of freedom:
{res}{col 1}{text}{hline 13}{c TT}{hline 12}{hline 12}{hline 14}{hline 1}{c TRC}
{col 1}{text} Absorbed FE{col 14}{c |} Categories{col 27} - Redundant{col 39}  = Num. Coefs{col 54}{c |}
{res}{col 1}{text}{hline 13}{c +}{hline 12}{hline 12}{hline 14}{hline 1}{c RT}
{col 1}{text}     city_id{col 14}{c |}{space 1}      262{col 27}{space 1}      262{col 39}{result}{space 1}        0{col 53}{text}*{col 54}{c |}
{res}{col 1}{text}{hline 13}{c BT}{hline 12}{hline 12}{hline 14}{hline 1}{c BRC}
* = FE nested within cluster; treated as redundant for DoF computation
{res}{txt}{browse `"E:\2024-00768_数据\2024-00768+日志文件/table_A3.xml"'}
{browse `"E:\2024-00768_数据"' :dir}{com} : {txt}{stata `"seeout using "E:\2024-00768_数据\2024-00768+日志文件/table_A3.txt""':seeout}
{res}{txt}(dropped 18 {browse "http://scorreia.com/research/singletons.pdf":singleton observations})
{res}{txt}({browse "http://scorreia.com/research/hdfe.pdf":MWFE estimator} converged in 1 iterations)
{res}
{txt}IV (2SLS) estimation
{hline 20}

Estimates efficient for homoskedasticity only
Statistics robust to heteroskedasticity and clustering on city_id

Number of clusters (city_id) = {col 33}{res}   262{txt}{col 55}Number of obs = {res}    1619
{txt}{col 55}F(  2,   261) = {res}    5.80
{txt}{col 55}Prob > F      = {res}  0.0034
{txt}Total (centered) SS     = {res} 36451.12823{txt}{col 55}Centered R2   = {res}  0.0078
{txt}Total (uncentered) SS   = {res} 36451.12823{txt}{col 55}Uncentered R2 = {res}  0.0078
{txt}Residual SS             = {res} 36168.49065{txt}{col 55}Root MSE      = {res}   4.731

{txt}{hline 13}{c TT}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{col 14}{c |}{col 26}    Robust
{col 1}d_emply_sh~c{col 14}{c |} Coefficient{col 26}  std. err.{col 38}      t{col 46}   P>|t|{col 54}     [95% con{col 67}f. interval]
{hline 13}{c +}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{space 5}d_Grain {c |}{col 14}{res}{space 2}-.1239562{col 26}{space 2} .2186607{col 37}{space 1}   -0.57{col 46}{space 3}0.571{col 54}{space 4}-.5545198{col 67}{space 3} .3066075
{txt}{space 1}lnGDP_pc_00 {c |}{col 14}{res}{space 2}-1.315602{col 26}{space 2}   .39262{col 37}{space 1}   -3.35{col 46}{space 3}0.001{col 54}{space 4}-2.088708{col 67}{space 3}-.5424961
{txt}{hline 13}{c BT}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{help ivreg2##idtest:Underidentification test} (Kleibergen-Paap rk LM statistic):{res}{col 71}  18.143
{txt}{col 52}Chi-sq({res}1{txt}) P-val =  {res}{col 73}0.0000
{txt}{hline 78}
{help ivreg2##widtest:Weak identification test} (Cragg-Donald Wald F statistic):{res}{col 71} 531.623
{txt}                         (Kleibergen-Paap rk Wald F statistic):{res}{col 71}  39.478
{txt}Stock-Yogo weak ID test critical values:{res}{txt}{col 42}10% maximal IV size{res}{col 73} 16.38
{txt}{col 42}15% maximal IV size{res}{col 73}  8.96
{txt}{col 42}20% maximal IV size{res}{col 73}  6.66
{txt}{col 42}25% maximal IV size{res}{col 73}  5.53
{txt}Source: Stock-Yogo (2005).  Reproduced by permission.
NB: Critical values are for Cragg-Donald F statistic and i.i.d. errors.
{hline 78}
{help ivreg2##overidtests:Hansen J statistic} (overidentification test of all instruments):{res}{col 71}   0.000
{txt}{col 50}(equation exactly identified)
{hline 78}
Instrumented:{col 23}d_Grain
Included instruments:{col 23}lnGDP_pc_00
Excluded instruments:{col 23}dsim_Grain
{help ivreg2##partial:Partialled-out}:{col 23}_cons
{col 23}nb: total SS, model F and R2s are after partialling-out;
{col 23}    any {help ivreg2##s_small:small-sample adjustments} include partialled-out
{col 23}    variables in regressor count K
{hline 78}
{res}
{txt}Absorbed degrees of freedom:
{res}{col 1}{text}{hline 13}{c TT}{hline 12}{hline 12}{hline 14}{hline 1}{c TRC}
{col 1}{text} Absorbed FE{col 14}{c |} Categories{col 27} - Redundant{col 39}  = Num. Coefs{col 54}{c |}
{res}{col 1}{text}{hline 13}{c +}{hline 12}{hline 12}{hline 14}{hline 1}{c RT}
{col 1}{text}     city_id{col 14}{c |}{space 1}      262{col 27}{space 1}      262{col 39}{result}{space 1}        0{col 53}{text}*{col 54}{c |}
{res}{col 1}{text}{hline 13}{c BT}{hline 12}{hline 12}{hline 14}{hline 1}{c BRC}
* = FE nested within cluster; treated as redundant for DoF computation
{res}{txt}{browse `"E:\2024-00768_数据\2024-00768+日志文件/table_A3.xml"'}
{browse `"E:\2024-00768_数据"' :dir}{com} : {txt}{stata `"seeout using "E:\2024-00768_数据\2024-00768+日志文件/table_A3.txt""':seeout}
{res}{txt}(dropped 18 {browse "http://scorreia.com/research/singletons.pdf":singleton observations})
{res}{txt}({browse "http://scorreia.com/research/hdfe.pdf":MWFE estimator} converged in 1 iterations)
{res}
{txt}IV (2SLS) estimation
{hline 20}

Estimates efficient for homoskedasticity only
Statistics robust to heteroskedasticity and clustering on city_id

Number of clusters (city_id) = {col 33}{res}   262{txt}{col 55}Number of obs = {res}    1619
{txt}{col 55}F(  2,   261) = {res}   14.37
{txt}{col 55}Prob > F      = {res}  0.0000
{txt}Total (centered) SS     = {res} 22557.65261{txt}{col 55}Centered R2   = {res}  0.0364
{txt}Total (uncentered) SS   = {res} 22557.65261{txt}{col 55}Uncentered R2 = {res}  0.0364
{txt}Residual SS             = {res} 21736.53021{txt}{col 55}Root MSE      = {res}   3.668

{txt}{hline 13}{c TT}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{col 14}{c |}{col 26}    Robust
{col 1}d_emply_sh~r{col 14}{c |} Coefficient{col 26}  std. err.{col 38}      t{col 46}   P>|t|{col 54}     [95% con{col 67}f. interval]
{hline 13}{c +}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{space 5}d_Grain {c |}{col 14}{res}{space 2}-.1398211{col 26}{space 2} .1337607{col 37}{space 1}   -1.05{col 46}{space 3}0.297{col 54}{space 4}-.4032086{col 67}{space 3} .1235664
{txt}{space 1}lnGDP_pc_00 {c |}{col 14}{res}{space 2} 2.017879{col 26}{space 2} .3822919{col 37}{space 1}    5.28{col 46}{space 3}0.000{col 54}{space 4}  1.26511{col 67}{space 3} 2.770648
{txt}{hline 13}{c BT}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{help ivreg2##idtest:Underidentification test} (Kleibergen-Paap rk LM statistic):{res}{col 71}  18.143
{txt}{col 52}Chi-sq({res}1{txt}) P-val =  {res}{col 73}0.0000
{txt}{hline 78}
{help ivreg2##widtest:Weak identification test} (Cragg-Donald Wald F statistic):{res}{col 71} 531.623
{txt}                         (Kleibergen-Paap rk Wald F statistic):{res}{col 71}  39.478
{txt}Stock-Yogo weak ID test critical values:{res}{txt}{col 42}10% maximal IV size{res}{col 73} 16.38
{txt}{col 42}15% maximal IV size{res}{col 73}  8.96
{txt}{col 42}20% maximal IV size{res}{col 73}  6.66
{txt}{col 42}25% maximal IV size{res}{col 73}  5.53
{txt}Source: Stock-Yogo (2005).  Reproduced by permission.
NB: Critical values are for Cragg-Donald F statistic and i.i.d. errors.
{hline 78}
{help ivreg2##overidtests:Hansen J statistic} (overidentification test of all instruments):{res}{col 71}   0.000
{txt}{col 50}(equation exactly identified)
{hline 78}
Instrumented:{col 23}d_Grain
Included instruments:{col 23}lnGDP_pc_00
Excluded instruments:{col 23}dsim_Grain
{help ivreg2##partial:Partialled-out}:{col 23}_cons
{col 23}nb: total SS, model F and R2s are after partialling-out;
{col 23}    any {help ivreg2##s_small:small-sample adjustments} include partialled-out
{col 23}    variables in regressor count K
{hline 78}
{res}
{txt}Absorbed degrees of freedom:
{res}{col 1}{text}{hline 13}{c TT}{hline 12}{hline 12}{hline 14}{hline 1}{c TRC}
{col 1}{text} Absorbed FE{col 14}{c |} Categories{col 27} - Redundant{col 39}  = Num. Coefs{col 54}{c |}
{res}{col 1}{text}{hline 13}{c +}{hline 12}{hline 12}{hline 14}{hline 1}{c RT}
{col 1}{text}     city_id{col 14}{c |}{space 1}      262{col 27}{space 1}      262{col 39}{result}{space 1}        0{col 53}{text}*{col 54}{c |}
{res}{col 1}{text}{hline 13}{c BT}{hline 12}{hline 12}{hline 14}{hline 1}{c BRC}
* = FE nested within cluster; treated as redundant for DoF computation
{res}{txt}{browse `"E:\2024-00768_数据\2024-00768+日志文件/table_A3.xml"'}
{browse `"E:\2024-00768_数据"' :dir}{com} : {txt}{stata `"seeout using "E:\2024-00768_数据\2024-00768+日志文件/table_A3.txt""':seeout}

{com}.         
. 
. ********************************************************************************
. ********************* 表A4. 已实现的转移支付数额*********************
. ********************************************************************************
. 
. 
.         use $working_data/transfers.dta ,clear
{txt}
{com}.         
.         * 平减产粮大县奖励(transfer_daxian)和农业补贴(agr_subsidy)
.         foreach v of varlist transfer_daxian agr_subsidy{c -(}
{txt}  2{com}.                 
.                 gen `v'_df = `v'/cpi
{txt}  3{com}.                 
.         {c )-}
{txt}(1 missing value generated)

{com}.         
.         * 平减后总额
.         foreach v of varlist transfer_daxian agr_subsidy{c -(}
{txt}  2{com}.                 
.                 egen tl_`v' = total(`v'_df)
{txt}  3{com}.                 
.         {c )-}
{txt}
{com}.         
.         
.         
.         * 每年度平减后的总转移支付
.         egen tl_transfer = rowtotal(transfer_daxian_df agr_subsidy_df)
{txt}
{com}.         
.         
.         * 所有年度总转移支付
.         egen total_transfers = total(tl_transfer)
{txt}
{com}.         
. 
.         * 输出表格
.         * 在最后一行补充总和
.         gl tl_transfer_daxian = tl_transfer_daxian[1]
{txt}
{com}.         gl tl_agr_subsidy = tl_agr_subsidy[1]
{txt}
{com}.         gl total_transfers = total_transfers[1]
{txt}
{com}.         
.         set obs 14
{txt}{p}
Number of observations ({bf:_N}) was 13,
now 14.
{p_end}

{com}.         replace transfer_daxian_df = $tl_transfer_daxian in 14
{txt}(1 real change made)

{com}.         replace agr_subsidy_df = $tl_agr_subsidy in 14
{txt}(1 real change made)

{com}.         replace tl_transfer = $total_transfers in 14
{txt}(1 real change made)

{com}.         
.         drop cpi tl_transfer_daxian tl_agr_subsidy total_transfers
{txt}
{com}.         
.         
.         tostring year,replace
{txt}year was {res:int} now {res:str4}

{com}.         replace year = "总和" in 14
{txt}variable {bf}{res}year{sf}{txt} was {bf}{res}str4{sf}{txt} now {bf}{res}str6{sf}
{txt}(1 real change made)

{com}.         
.         
.         * 保留小数点后两位
.         foreach v of varlist transfer_daxian transfer_daxian_df agr_subsidy agr_subsidy_df tl_transfer{c -(}
{txt}  2{com}.                 
.                 gen `v'_2d = string(round(`v',0.01),"%20.2f")
{txt}  3{com}.                 
.         {c )-}
{txt}
{com}.         
.         keep year *_2d
{txt}
{com}.         renvarlab *_2d,subst(_2d )
{txt}
{com}.         order year transfer_daxian transfer_daxian_df agr_subsidy agr_subsidy_df tl_transfer, first
{txt}
{com}.         
.         
.         label variable year "年份"
{txt}
{com}.         label variable transfer_daxian "产粮大县奖励"
{txt}
{com}.         label variable transfer_daxian_df "产粮大县奖励   （2000年价）"
{txt}
{com}.         label variable agr_subsidy "农业“四项”补贴"
{txt}
{com}.         label variable agr_subsidy_df "农业“四项”补贴（2000年价）"
{txt}
{com}.         label variable tl_transfer "加总（2000年价）"
{txt}
{com}. 
.         
.         
.         export excel using $logfiles/table_A4.xlsx,firstrow(varlabels) replace
{res}{txt}file {bf:E:\2024-00768_数据\2024-00768+日志文件/table_A4.xlsx} saved

{com}.         
.         
.         
.         
.         
. ********************************************************************************
. **************** 表 A5.利益补偿机制设计和补偿效果：产销区不同标准 ****************
. ********************************************************************************
. 
.         use $working_data/county_panel.dta ,clear
{txt}
{com}.         capture mkdir $logfiles/table_A5
{txt}
{com}.         
.         
.         
.         ** (1).计算样本县增产成本，以便后续计算补偿标准
.         
.         * 生成变量的基期(2003)值
.         gen is_yr2003 = 1 if year==2003
{txt}(58,333 missing values generated)

{com}.         foreach v of varlist Grain lnGDP_pc{c -(}
{txt}  2{com}.                 
.                 bysort county_id (year): egen `v'_03 = mean(`v'*is_yr2003)
{txt}  3{com}.                 
.         {c )-}
{txt}(8,523 missing values generated)
(11,649 missing values generated)

{com}.         
.         * 生成相对基期的差分
.         foreach v of varlist Grain lnGDP_pc{c -(}
{txt}  2{com}.                 
.                 gen d_`v' = `v' - `v'_03
{txt}  3{com}.                 
.         {c )-}
{txt}(13,008 missing values generated)
(16,346 missing values generated)

{com}. 
.         
.         * 基准估计 (保留小数点后三位，不会影响结论)
.         ivreghdfe d_lnGDP_pc lnGDP_pc_03 (d_Grain = dsim_Grain) if year==2016, absorb(city_id) vce(cluster city_id)
{res}{txt}(dropped 11 {browse "http://scorreia.com/research/singletons.pdf":singleton observations})
{res}{txt}({browse "http://scorreia.com/research/hdfe.pdf":MWFE estimator} converged in 1 iterations)
{res}
{txt}IV (2SLS) estimation
{hline 20}

Estimates efficient for homoskedasticity only
Statistics robust to heteroskedasticity and clustering on city_id

Number of clusters (city_id) = {col 33}{res}   276{txt}{col 55}Number of obs = {res}    1789
{txt}{col 55}F(  2,   275) = {res}   81.69
{txt}{col 55}Prob > F      = {res}  0.0000
{txt}Total (centered) SS     = {res} 129.3586903{txt}{col 55}Centered R2   = {res}  0.1589
{txt}Total (uncentered) SS   = {res} 129.3586903{txt}{col 55}Uncentered R2 = {res}  0.1589
{txt}Residual SS             = {res} 108.8029909{txt}{col 55}Root MSE      = {res}   .2468

{txt}{hline 13}{c TT}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{col 14}{c |}{col 26}    Robust
{col 1}  d_lnGDP_pc{col 14}{c |} Coefficient{col 26}  std. err.{col 38}      t{col 46}   P>|t|{col 54}     [95% con{col 67}f. interval]
{hline 13}{c +}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{space 5}d_Grain {c |}{col 14}{res}{space 2}-.0591131{col 26}{space 2}  .012991{col 37}{space 1}   -4.55{col 46}{space 3}0.000{col 54}{space 4}-.0846876{col 67}{space 3}-.0335386
{txt}{space 1}lnGDP_pc_03 {c |}{col 14}{res}{space 2}-.3047582{col 26}{space 2} .0243734{col 37}{space 1}  -12.50{col 46}{space 3}0.000{col 54}{space 4}-.3527404{col 67}{space 3} -.256776
{txt}{hline 13}{c BT}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{help ivreg2##idtest:Underidentification test} (Kleibergen-Paap rk LM statistic):{res}{col 71}  31.800
{txt}{col 52}Chi-sq({res}1{txt}) P-val =  {res}{col 73}0.0000
{txt}{hline 78}
{help ivreg2##widtest:Weak identification test} (Cragg-Donald Wald F statistic):{res}{col 71} 566.057
{txt}                         (Kleibergen-Paap rk Wald F statistic):{res}{col 71}  62.566
{txt}Stock-Yogo weak ID test critical values:{res}{txt}{col 42}10% maximal IV size{res}{col 73} 16.38
{txt}{col 42}15% maximal IV size{res}{col 73}  8.96
{txt}{col 42}20% maximal IV size{res}{col 73}  6.66
{txt}{col 42}25% maximal IV size{res}{col 73}  5.53
{txt}Source: Stock-Yogo (2005).  Reproduced by permission.
NB: Critical values are for Cragg-Donald F statistic and i.i.d. errors.
{hline 78}
{help ivreg2##overidtests:Hansen J statistic} (overidentification test of all instruments):{res}{col 71}   0.000
{txt}{col 50}(equation exactly identified)
{hline 78}
Instrumented:{col 23}d_Grain
Included instruments:{col 23}lnGDP_pc_03
Excluded instruments:{col 23}dsim_Grain
{help ivreg2##partial:Partialled-out}:{col 23}_cons
{col 23}nb: total SS, model F and R2s are after partialling-out;
{col 23}    any {help ivreg2##s_small:small-sample adjustments} include partialled-out
{col 23}    variables in regressor count K
{hline 78}
{res}
{txt}Absorbed degrees of freedom:
{res}{col 1}{text}{hline 13}{c TT}{hline 12}{hline 12}{hline 14}{hline 1}{c TRC}
{col 1}{text} Absorbed FE{col 14}{c |} Categories{col 27} - Redundant{col 39}  = Num. Coefs{col 54}{c |}
{res}{col 1}{text}{hline 13}{c +}{hline 12}{hline 12}{hline 14}{hline 1}{c RT}
{col 1}{text}     city_id{col 14}{c |}{space 1}      276{col 27}{space 1}      276{col 39}{result}{space 1}        0{col 53}{text}*{col 54}{c |}
{res}{col 1}{text}{hline 13}{c BT}{hline 12}{hline 12}{hline 14}{hline 1}{c BRC}
* = FE nested within cluster; treated as redundant for DoF computation
{res}{txt}
{com}.         gen coef_base = round(_b[d_Grain],0.001)
{txt}
{com}.         gl ebase = round(_b[d_Grain],0.001)
{txt}
{com}.         
.         
.         * 计算样本期间各县增产量，平均人口、人均GDP以及GDP
.         gen is_yr2016 = 1 if year==2016
{txt}(58,692 missing values generated)

{com}.         foreach v of varlist GDP_pc pop GDP farmland_area{c -(}
{txt}  2{com}.                 
.                 bysort county_id (year): egen `v'_03 = mean(`v'*is_yr2003)
{txt}  3{com}.                 bysort county_id (year): egen `v'_16 = mean(`v'*is_yr2016)
{txt}  4{com}.                 
.         {c )-}
{txt}(11,649 missing values generated)
(13,146 missing values generated)
(7,695 missing values generated)
(9,192 missing values generated)
(9,878 missing values generated)
(7,005 missing values generated)
(1,005 missing values generated)
(3,093 missing values generated)

{com}.         
.         
.         bysort county_id (year): egen Grain_16 = mean(Grain*is_yr2016)
{txt}(7,511 missing values generated)

{com}.         gen dgrain_0316 = Grain_16 - Grain_03
{txt}(9,006 missing values generated)

{com}.         gen mgdppc_0316 = (GDP_pc_03 + GDP_pc_16)/2
{txt}(17,123 missing values generated)

{com}.         gen mpop_0316 = (pop_03 + pop_16)/2
{txt}(13,399 missing values generated)

{com}.         gen mgdp_0316 = mgdppc_0316*mpop_0316
{txt}(17,123 missing values generated)

{com}.         
.         drop if dgrain_0316==.|mgdppc_0316==.|mpop_0316==.
{txt}(18,227 observations deleted)

{com}.         keep if year==2016
{txt}(41,140 observations deleted)

{com}.         
.         
.         * 估计各县增产成本
.         * i.各县增产成本(GDP)=产量变化*估计系数*人均GDP*人口 (见正文p12)
.         gen gdp_cost = dgrain_0316*coef_base*mgdppc_0316*mpop_0316
{txt}
{com}. 
.         
.         
.         ** (2). 2016年事实的区域发展差距
.         
.         * 基尼系数
.         * 16年人口(万人->人并取整)作为权重
.         gen pop_16_int = round(pop*10000)
{txt}
{com}.         ineqdeco GDP_pc_16 [fweight = pop_16_int]
 
{txt}Percentile ratios

{hline 10}{c TT}{hline 47}
  All obs {c |}    p90/p10     p90/p50     p10/p50     p75/p25
{hline 10}{c +}{hline 47}
          {c |}      {res}4.888       2.424       0.496       2.346
{txt}{hline 10}{c BT}{hline 47}
  
Generalized Entropy indices GE(a), where a = income difference
 sensitivity parameter, and Gini coefficient

{hline 10}{c TT}{hline 59}
  All obs {c |}     GE(-1)       GE(0)       GE(1)       GE(2)        Gini
{hline 10}{c +}{hline 59}
          {c |}    {res}0.25361     0.21964     0.23854     0.34121     0.36545
{txt}{hline 10}{c BT}{hline 59}
   
Atkinson indices, A(e), where e > 0 is the inequality aversion parameter

{hline 10}{c TT}{hline 35}
  All obs {c |}     A(0.5)        A(1)        A(2)
{hline 10}{c +}{hline 35}
          {c |}    {res}0.10799     0.19719     0.33653
{txt}{hline 10}{c BT}{hline 35}

{com}.         gen gini_real = round(r(gini),0.001)
{txt}
{com}.         
.         * 人均GDP，高产组:低产组
.         egen high_dgrain = xtile(dgrain_0316),nquantiles(2)
{txt}
{com}.         //高组=1，低组=0
.         replace high_dgrain = high_dgrain - 1
{txt}(1,870 real changes made)

{com}.         
.         //组内均值(人口加权)
.         bysort high_dgrain: egen ttlpop_by_dgrain = total(pop_16)
{txt}
{com}.         bysort high_dgrain: egen mgdppc_by_dgrain = total(GDP_pc_16*pop_16/ttlpop_by_dgrain)
{txt}
{com}.         
.         sum mgdppc_by_dgrain if high_dgrain==1,meanonly
{txt}
{com}.         gen gdppc_high_real = r(mean)
{txt}
{com}.         
.         sum mgdppc_by_dgrain if high_dgrain==0,meanonly
{txt}
{com}.         gen gdppc_low_real = r(mean)
{txt}
{com}.         
.         gen ratio_gdppc_real = round(gdppc_high_real/gdppc_low_real,0.001)
{txt}
{com}.         
.         
.         
.         ** (3).按不同标准补偿并计算补偿后的发展差距
.         
.         * A.按人口补偿
.         * 各产销区的总人口(万人)
.          bysort cqtype: egen cq_pop_16 = total(pop_16)
{txt}
{com}.         * 各产销区的总成本(万元)
.          bysort cqtype: egen cq_gdp_cost = total((-1)*gdp_cost)
{txt}
{com}.          * 各产销区的补偿标准(元/人)
.          bysort cqtype: gen stad_bypop_cq = cq_gdp_cost/cq_pop_16
{txt}
{com}.          
.          * 补偿后反事实GDP         
.          gen cfgdp_bypop_cq = GDP_16+stad_bypop_cq*pop_16
{txt}
{com}.          * 补偿后反事实人均GDP
.          gen cfgdppc_bypop_cq = cfgdp_bypop_cq/pop_16
{txt}
{com}.         
.         
.         * 计算反事实后的区域发展差距
.         * 基尼系数
.          ineqdeco cfgdppc_bypop_cq [fweight = pop_16_int]
 
{txt}Percentile ratios

{hline 10}{c TT}{hline 47}
  All obs {c |}    p90/p10     p90/p50     p10/p50     p75/p25
{hline 10}{c +}{hline 47}
          {c |}      {res}4.547       2.341       0.515       2.255
{txt}{hline 10}{c BT}{hline 47}
  
Generalized Entropy indices GE(a), where a = income difference
 sensitivity parameter, and Gini coefficient

{hline 10}{c TT}{hline 59}
  All obs {c |}     GE(-1)       GE(0)       GE(1)       GE(2)        Gini
{hline 10}{c +}{hline 59}
          {c |}    {res}0.23231     0.20412     0.22283     0.31696     0.35261
{txt}{hline 10}{c BT}{hline 59}
   
Atkinson indices, A(e), where e > 0 is the inequality aversion parameter

{hline 10}{c TT}{hline 35}
  All obs {c |}     A(0.5)        A(1)        A(2)
{hline 10}{c +}{hline 35}
          {c |}    {res}0.10093     0.18464     0.31723
{txt}{hline 10}{c BT}{hline 35}

{com}.          gen gini_cfpop_cq = round(r(gini),0.001)
{txt}
{com}.          
.          
.         * 人均GDP，高产组:低产组
.         //组内均值(人口加权)
.         bysort high_dgrain: egen mgdppc_by_dgrain_cfpop_cq = total(cfgdppc_bypop_cq*pop_16/ttlpop_by_dgrain)
{txt}
{com}.         
.         sum mgdppc_by_dgrain_cfpop_cq if high_dgrain==1,meanonly
{txt}
{com}.         gen gdppc_high_cfpop_cq = r(mean)
{txt}
{com}.         
.         sum mgdppc_by_dgrain_cfpop_cq if high_dgrain==0,meanonly
{txt}
{com}.         gen gdppc_low_cfpop_cq = r(mean)
{txt}
{com}.         
.         gen ratio_gdppc_cfpop_cq = round(gdppc_high_cfpop_cq/gdppc_low_cfpop_cq ,0.001)
{txt}
{com}.         
.         
.                                         
.         * B.按粮食增产补偿
.         * 各产区总增产
.         bysort cqtype: egen cq_dgrain_0316 = total(dgrain_0316)
{txt}
{com}.         * 各产区补偿标准
.         bysort cqtype: gen stad_bygrn_cq = cq_gdp_cost/cq_dgrain_0316
{txt}
{com}.         * 换算单位元/吨
.         gen stad_bygrn_cq_ypt = stad_bygrn_cq/10
{txt}
{com}.         * 补偿后的反事实GDP
.         gen cfgdp_bygrn_cq = GDP_16+stad_bygrn_cq*dgrain_0316
{txt}
{com}.         * 补偿后反事实人均GDP
.         gen cfgdppc_bygrn_cq = cfgdp_bygrn_cq/pop_16
{txt}
{com}.         
.         
.         * 计算反事实后的区域发展差距
.         * 基尼系数
.          ineqdeco cfgdppc_bygrn_cq [fweight = pop_16_int]
 
{txt}Percentile ratios

{hline 10}{c TT}{hline 47}
  All obs {c |}    p90/p10     p90/p50     p10/p50     p75/p25
{hline 10}{c +}{hline 47}
          {c |}      {res}4.579       2.337       0.510       2.298
{txt}{hline 10}{c BT}{hline 47}
  
Generalized Entropy indices GE(a), where a = income difference
 sensitivity parameter, and Gini coefficient

{hline 10}{c TT}{hline 59}
  All obs {c |}     GE(-1)       GE(0)       GE(1)       GE(2)        Gini
{hline 10}{c +}{hline 59}
          {c |}    {res}0.23387     0.20433     0.22174     0.31326     0.35260
{txt}{hline 10}{c BT}{hline 59}
   
Atkinson indices, A(e), where e > 0 is the inequality aversion parameter

{hline 10}{c TT}{hline 35}
  All obs {c |}     A(0.5)        A(1)        A(2)
{hline 10}{c +}{hline 35}
          {c |}    {res}0.10075     0.18480     0.31868
{txt}{hline 10}{c BT}{hline 35}

{com}.          gen gini_cfgrn_cq = round(r(gini),0.001)
{txt}
{com}.         
.         * 人均GDP，高产组:低产组
.         //组内均值(人口加权)
.         bysort high_dgrain: egen mgdppc_by_dgrain_cfgrn_cq = total(cfgdppc_bygrn_cq*pop_16/ttlpop_by_dgrain)
{txt}
{com}.         
.         sum mgdppc_by_dgrain_cfgrn_cq if high_dgrain==1,meanonly
{txt}
{com}.         gen gdppc_high_cfgrn_cq = r(mean)
{txt}
{com}.         
.         sum mgdppc_by_dgrain_cfgrn_cq if high_dgrain==0,meanonly
{txt}
{com}.         gen gdppc_low_cfgrn_cq = r(mean)
{txt}
{com}.         
.         gen ratio_gdppc_cfgrn_cq = round(gdppc_high_cfgrn_cq/gdppc_low_cfgrn_cq ,0.001)
{txt}
{com}.                 
.                 
. 
.         * C.按耕地面积补偿
.         * 各产销区总耕地面积
.         bysort cqtype: egen cq_fmld_16 = total(farmland_area_16)
{txt}
{com}.         * 各产销区补偿标准
.         bysort year cqtype: gen stad_byland_cq = cq_gdp_cost/cq_fmld_16
{txt}
{com}.         * 单位换算成元/亩
.         gen stad_byland_cq_ypm = stad_byland_cq/1500
{txt}
{com}.         
.         * 补偿后反事实GDP
.         gen cfgdp_byland_cq = GDP_16+stad_byland_cq*farmland_area_16
{txt}(9 missing values generated)

{com}.         * 补偿后反事实人均GDP   
.         gen cfgdppc_byland_cq = cfgdp_byland_cq/pop_16
{txt}(9 missing values generated)

{com}.         
.         
.         * 计算反事实后的区域发展差距
.         * 基尼系数
.          ineqdeco cfgdppc_byland_cq [fweight = pop_16_int]
 
{txt}Percentile ratios

{hline 10}{c TT}{hline 47}
  All obs {c |}    p90/p10     p90/p50     p10/p50     p75/p25
{hline 10}{c +}{hline 47}
          {c |}      {res}4.703       2.339       0.497       2.319
{txt}{hline 10}{c BT}{hline 47}
  
Generalized Entropy indices GE(a), where a = income difference
 sensitivity parameter, and Gini coefficient

{hline 10}{c TT}{hline 59}
  All obs {c |}     GE(-1)       GE(0)       GE(1)       GE(2)        Gini
{hline 10}{c +}{hline 59}
          {c |}    {res}0.23858     0.20725     0.22447     0.31779     0.35470
{txt}{hline 10}{c BT}{hline 59}
   
Atkinson indices, A(e), where e > 0 is the inequality aversion parameter

{hline 10}{c TT}{hline 35}
  All obs {c |}     A(0.5)        A(1)        A(2)
{hline 10}{c +}{hline 35}
          {c |}    {res}0.10201     0.18718     0.32303
{txt}{hline 10}{c BT}{hline 35}

{com}.          gen gini_cfland_cq = round(r(gini),0.001)
{txt}
{com}.         
.         * 人均GDP，高产组:低产组
.         //组内均值(人口加权)
.         bysort high_dgrain: egen mgdppc_by_dgrain_cfland_cq = total(cfgdppc_byland_cq*pop_16/ttlpop_by_dgrain)
{txt}
{com}.         
.         sum mgdppc_by_dgrain_cfland_cq if high_dgrain==1,meanonly
{txt}
{com}.         gen gdppc_high_cfland_cq = r(mean)
{txt}
{com}.         
.         sum mgdppc_by_dgrain_cfland_cq if high_dgrain==0,meanonly
{txt}
{com}.         gen gdppc_low_cfland_cq = r(mean)
{txt}
{com}.         
.         gen ratio_gdppc_cfland_cq = round(gdppc_high_cfland_cq/gdppc_low_cfland_cq ,0.001)
{txt}
{com}. 
.         
.         
.         
.         ** (4).输出结果
.         
.         preserve
{txt}
{com}.         collapse (mean) standard = stad_bypop_cq gini_real gini_cf = gini_cfpop_cq ratio_gdppc_real ratio_gdppc_cf = ratio_gdppc_cfpop_cq,by(cqtype)
{res}{txt}
{com}.         gen row = 1
{txt}
{com}.         gen rownames = "按人口平分"
{txt}
{com}.         save $logfiles/table_A5/compen_cq_1.dta,replace
{txt}{p 0 4 2}
(file {bf}
E:\2024-00768_数据\2024-00768+日志文件/table_A5/compen_cq_1.dta{rm}
not found)
{p_end}
{p 0 4 2}
file {bf}
E:\2024-00768_数据\2024-00768+日志文件/table_A5/compen_cq_1.dta{rm}
saved
{p_end}

{com}.         restore
{txt}
{com}.         
. 
.         preserve
{txt}
{com}.         collapse (mean) standard = stad_bygrn_cq_ypt gini_real gini_cf = gini_cfgrn_cq ratio_gdppc_real ratio_gdppc_cf = ratio_gdppc_cfgrn_cq,by(cqtype)
{res}{txt}
{com}.         gen row = 2
{txt}
{com}.         gen rownames = "按粮食增产"
{txt}
{com}.         save $logfiles/table_A5/compen_cq_2.dta,replace
{txt}{p 0 4 2}
(file {bf}
E:\2024-00768_数据\2024-00768+日志文件/table_A5/compen_cq_2.dta{rm}
not found)
{p_end}
{p 0 4 2}
file {bf}
E:\2024-00768_数据\2024-00768+日志文件/table_A5/compen_cq_2.dta{rm}
saved
{p_end}

{com}.         restore
{txt}
{com}.         
.         
.         preserve
{txt}
{com}.         collapse (mean) standard = stad_byland_cq_ypm gini_real gini_cf = gini_cfland_cq ratio_gdppc_real ratio_gdppc_cf = ratio_gdppc_cfland_cq,by(cqtype)
{res}{txt}
{com}.         gen row = 3
{txt}
{com}.         gen rownames = "按耕地存量"
{txt}
{com}.         save $logfiles/table_A5/compen_cq_3.dta,replace
{txt}{p 0 4 2}
(file {bf}
E:\2024-00768_数据\2024-00768+日志文件/table_A5/compen_cq_3.dta{rm}
not found)
{p_end}
{p 0 4 2}
file {bf}
E:\2024-00768_数据\2024-00768+日志文件/table_A5/compen_cq_3.dta{rm}
saved
{p_end}

{com}.         restore
{txt}
{com}.         
.         
.         * 合并输出
.         use $logfiles/table_A5/compen_cq_1.dta ,clear
{txt}
{com}.         append using $logfiles/table_A5/compen_cq_2.dta
{txt}
{com}.         append using $logfiles/table_A5/compen_cq_3.dta
{txt}
{com}.         replace standard = round(standard,0.01)
{txt}(9 real changes made)

{com}.         
.         //保留小数位数
.         gen standard_str = string(standard,"%20.2f")
{txt}
{com}.         foreach v of varlist gini_* ratio_*{c -(}
{txt}  2{com}.                 
.                 gen `v'_str = string(`v',"%20.3f")
{txt}  3{com}.         {c )-}
{txt}
{com}.         
.         keep rownames *_str cqtype
{txt}
{com}.         renvarlab *_str,subst(_str )
{txt}
{com}.         
.         gen cq = "主产区" if cqtype==1
{txt}(6 missing values generated)

{com}.         replace cq = "平衡区" if cqtype==2
{txt}(3 real changes made)

{com}.         replace cq = "主销区" if cqtype==3
{txt}(3 real changes made)

{com}.         drop cqtype
{txt}
{com}.         
.         label variable standard "补偿标准"
{txt}
{com}.         label variable gini_real "基尼系数：2016事实"
{txt}
{com}.         label variable gini_cf "基尼系数：一次性补偿后"
{txt}
{com}.         label variable ratio_gdppc_real "人均GDP之比：2016事实"
{txt}
{com}.         label variable ratio_gdppc_cf "人均GDP之比：一次性补偿后"
{txt}
{com}.         order rownames cq standard gini_real gini_cf ratio_gdppc_real ratio_gdppc_cf
{txt}
{com}.         
.         export excel using $logfiles/table_A5/table_A5.xls, firstrow(varlabels) replace
{res}{txt}file {bf:E:\2024-00768_数据\2024-00768+日志文件/table_A5/table_A5.xls} saved

{com}.         
.         
.         
.         
. ********************************************************************************
. ******************* 图A1.主产区和非主产区县域增产分布  **************************
. ********************************************************************************
. 
.         use $working_data\county_panel.dta ,clear
{txt}
{com}.         
.                                                 ***--- 变量处理 ---***      
.         
.         * 生成变量的基期(2003)值
.         gen is_yr2003 = 1 if year==2003
{txt}(58,333 missing values generated)

{com}.         foreach v of varlist Grain lnGDP_pc{c -(}
{txt}  2{com}.                 
.                 bysort county_id (year): egen `v'_03 = mean(`v'*is_yr2003)
{txt}  3{com}.                 
.         {c )-}
{txt}(8,523 missing values generated)
(11,649 missing values generated)

{com}.         
.         
.         * 生成相对基期的差分
.         foreach v of varlist Grain lnGDP_pc{c -(}
{txt}  2{com}.                 
.                 gen d_`v' = `v' - `v'_03
{txt}  3{com}.                 
.         {c )-}
{txt}(13,008 missing values generated)
(16,346 missing values generated)

{com}. 
.         
.         
.         * 和基准回归样本保持一致
.         ivreghdfe d_lnGDP_pc lnGDP_pc_03 (d_Grain = dsim_Grain) if year==2016, absorb(city_id) vce(cluster city_id)
{res}{txt}(dropped 11 {browse "http://scorreia.com/research/singletons.pdf":singleton observations})
{res}{txt}({browse "http://scorreia.com/research/hdfe.pdf":MWFE estimator} converged in 1 iterations)
{res}
{txt}IV (2SLS) estimation
{hline 20}

Estimates efficient for homoskedasticity only
Statistics robust to heteroskedasticity and clustering on city_id

Number of clusters (city_id) = {col 33}{res}   276{txt}{col 55}Number of obs = {res}    1789
{txt}{col 55}F(  2,   275) = {res}   81.69
{txt}{col 55}Prob > F      = {res}  0.0000
{txt}Total (centered) SS     = {res} 129.3586903{txt}{col 55}Centered R2   = {res}  0.1589
{txt}Total (uncentered) SS   = {res} 129.3586903{txt}{col 55}Uncentered R2 = {res}  0.1589
{txt}Residual SS             = {res} 108.8029909{txt}{col 55}Root MSE      = {res}   .2468

{txt}{hline 13}{c TT}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{col 14}{c |}{col 26}    Robust
{col 1}  d_lnGDP_pc{col 14}{c |} Coefficient{col 26}  std. err.{col 38}      t{col 46}   P>|t|{col 54}     [95% con{col 67}f. interval]
{hline 13}{c +}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{space 5}d_Grain {c |}{col 14}{res}{space 2}-.0591131{col 26}{space 2}  .012991{col 37}{space 1}   -4.55{col 46}{space 3}0.000{col 54}{space 4}-.0846876{col 67}{space 3}-.0335386
{txt}{space 1}lnGDP_pc_03 {c |}{col 14}{res}{space 2}-.3047582{col 26}{space 2} .0243734{col 37}{space 1}  -12.50{col 46}{space 3}0.000{col 54}{space 4}-.3527404{col 67}{space 3} -.256776
{txt}{hline 13}{c BT}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{help ivreg2##idtest:Underidentification test} (Kleibergen-Paap rk LM statistic):{res}{col 71}  31.800
{txt}{col 52}Chi-sq({res}1{txt}) P-val =  {res}{col 73}0.0000
{txt}{hline 78}
{help ivreg2##widtest:Weak identification test} (Cragg-Donald Wald F statistic):{res}{col 71} 566.057
{txt}                         (Kleibergen-Paap rk Wald F statistic):{res}{col 71}  62.566
{txt}Stock-Yogo weak ID test critical values:{res}{txt}{col 42}10% maximal IV size{res}{col 73} 16.38
{txt}{col 42}15% maximal IV size{res}{col 73}  8.96
{txt}{col 42}20% maximal IV size{res}{col 73}  6.66
{txt}{col 42}25% maximal IV size{res}{col 73}  5.53
{txt}Source: Stock-Yogo (2005).  Reproduced by permission.
NB: Critical values are for Cragg-Donald F statistic and i.i.d. errors.
{hline 78}
{help ivreg2##overidtests:Hansen J statistic} (overidentification test of all instruments):{res}{col 71}   0.000
{txt}{col 50}(equation exactly identified)
{hline 78}
Instrumented:{col 23}d_Grain
Included instruments:{col 23}lnGDP_pc_03
Excluded instruments:{col 23}dsim_Grain
{help ivreg2##partial:Partialled-out}:{col 23}_cons
{col 23}nb: total SS, model F and R2s are after partialling-out;
{col 23}    any {help ivreg2##s_small:small-sample adjustments} include partialled-out
{col 23}    variables in regressor count K
{hline 78}
{res}
{txt}Absorbed degrees of freedom:
{res}{col 1}{text}{hline 13}{c TT}{hline 12}{hline 12}{hline 14}{hline 1}{c TRC}
{col 1}{text} Absorbed FE{col 14}{c |} Categories{col 27} - Redundant{col 39}  = Num. Coefs{col 54}{c |}
{res}{col 1}{text}{hline 13}{c +}{hline 12}{hline 12}{hline 14}{hline 1}{c RT}
{col 1}{text}     city_id{col 14}{c |}{space 1}      276{col 27}{space 1}      276{col 39}{result}{space 1}        0{col 53}{text}*{col 54}{c |}
{res}{col 1}{text}{hline 13}{c BT}{hline 12}{hline 12}{hline 14}{hline 1}{c BRC}
* = FE nested within cluster; treated as redundant for DoF computation
{res}{txt}
{com}.         keep if e(sample)==1
{txt}(59,448 observations deleted)

{com}.         * 计算分地区的均值以便去中心化
.         //主产区
.         sum d_Grain if year==2016&is_zcq==1

{txt}    Variable {c |}        Obs        Mean    Std. dev.       Min        Max
{hline 13}{c +}{hline 57}
{space 5}d_Grain {c |}{res}        998    1.577363    2.364031     -2.932   16.43966
{txt}
{com}.         local mean_dgrain_zcq = `r(mean)'
{txt}
{com}.         //非主产区
.         sum d_Grain if year==2016&is_zcq==0

{txt}    Variable {c |}        Obs        Mean    Std. dev.       Min        Max
{hline 13}{c +}{hline 57}
{space 5}d_Grain {c |}{res}        791    .3771747    .7952018   -2.55416   9.034249
{txt}
{com}.         local mean_dgrain_nzcq = `r(mean)'
{txt}
{com}.         
.         twoway kdensity d_Grain if year==2016&is_zcq==1,lpattern(solid) ||kdensity d_Grain if year==2016&is_zcq==0,lpattern(longdash) ||, xline(`mean_dgrain_zcq',lpattern(solid) lwidth(small) lstyle(refline)) xline(`mean_dgrain_nzcq',lpattern(longdash) lwidth(small) lstyle(refline) lcolor(gs10)) xlabel(-5(5)15) ytitle(核密度) xtitle({c -(}stSerif:{c -(}&Delta{c )-}{c )-}{c -(}it:{c -(}stSerif:Grain{c )-}{c )-} ({c -(}stSerif:十万吨{c )-})) legend(label(1 "主产区") label(2 "非主产区") ring(0) position(1) size(medsmall)) scheme(s1mono)
{p 0 4 2}
{txt}(note:  named style
small not found in class
linewidth,  default attributes used)
{p_end}
{com}{txt}{p 0 8} (note:  linewidth  {com}{txt}not found in scheme, default attributes used){p_end}
{p 0 4 2}
{txt}(note:  named style
small not found in class
linewidth,  default attributes used)
{p_end}
{com}{txt}{p 0 8} (note:  linewidth  {com}{txt}not found in scheme, default attributes used){p_end}
{res}{txt}
{com}.         graph export "$logfiles/figure_A1.png",replace width(1600) height(1200)
{txt}{p 0 4 2}
(file {bf}
E:\2024-00768_数据\2024-00768+日志文件/figure_A1.png{rm}
not found)
{p_end}
{p 0 4 2}
file {bf}
E:\2024-00768_数据\2024-00768+日志文件/figure_A1.png{rm}
saved as
PNG
format
{p_end}

{com}. 
.         
.         
.                 
.                 
.                 
.                 
. ********************************************************************************
. ********************* 图A2.粮食增产量与期初粮食产量的相关性 *********************
. ********************************************************************************
. 
. 
.         use $working_data\county_panel.dta ,clear
{txt}
{com}. 
.         
.                                                 ***--- 变量处理 ---***      
.         
.         * 生成变量的基期(2003)值
.         gen is_yr2003 = 1 if year==2003
{txt}(58,333 missing values generated)

{com}.         foreach v of varlist Grain{c -(}
{txt}  2{com}.                 
.                 bysort county_id (year): egen `v'_03 = mean(`v'*is_yr2003)
{txt}  3{com}.                 
.         {c )-}
{txt}(8,523 missing values generated)

{com}.         
.         
.         * 生成相对基期的差分
.         foreach v of varlist Grain{c -(}
{txt}  2{com}.                 
.                 gen d_`v' = `v' - `v'_03
{txt}  3{com}.                 
.         {c )-}
{txt}(13,008 missing values generated)

{com}. 
.         
.         reg d_Grain Grain_03 if year==2016, vce(robust)

{txt}Linear regression                               Number of obs     = {res}     2,271
                                                {txt}F(1, 2269)        =  {res}   295.13
                                                {txt}Prob > F          = {res}    0.0000
                                                {txt}R-squared         = {res}    0.2464
                                                {txt}Root MSE          =    {res}  1.556

{txt}{hline 13}{c TT}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{col 14}{c |}{col 26}    Robust
{col 1}     d_Grain{col 14}{c |} Coefficient{col 26}  std. err.{col 38}      t{col 46}   P>|t|{col 54}     [95% con{col 67}f. interval]
{hline 13}{c +}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{space 4}Grain_03 {c |}{col 14}{res}{space 2} .4955228{col 26}{space 2}  .028844{col 37}{space 1}   17.18{col 46}{space 3}0.000{col 54}{space 4} .4389594{col 67}{space 3} .5520863
{txt}{space 7}_cons {c |}{col 14}{res}{space 2} .0070653{col 26}{space 2} .0463613{col 37}{space 1}    0.15{col 46}{space 3}0.879{col 54}{space 4}-.0838498{col 67}{space 3} .0979803
{txt}{hline 13}{c BT}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{res}{txt}
{com}.         local beta : display %6.2f _b[Grain_03]
{res}{txt}
{com}.         local se : display %6.2f _se[Grain_03]  
{res}{txt}
{com}.         local t_stat : display %6.2f _b[Grain_03]/_se[Grain_03]
{res}{txt}
{com}. 
.         twoway scatter d_Grain Grain_03 if year==2016,mcolor(black) msize(small) || lfit d_Grain Grain_03 if year==2016, lcolor(black)||, scheme(s1mono) xtitle("{c -(}it:{c -(}stSerif:Grain{c -(}subscript:i,2003{c )-}{c )-}{c )-} ({c -(}stSerif:十万吨{c )-})") ytitle("{c -(}stSerif:{c -(}&Delta{c )-}{c )-}{c -(}it:{c -(}stSerif:Grain{c -(}subscript:i,2016{c )-}{c )-}{c )-} ({c -(}stSerif:十万吨{c )-})") legend(off) note("coef =`beta', SE =`se', t-stat =`t_stat'", size(small) width(5.7cm) ring(0) position(3) box bcolor(bg) lcolor(black) margin())
{res}{txt}
{com}.                 
.         graph export "$logfiles/figure_A2.png",replace width(1400) height(1200)
{txt}{p 0 4 2}
(file {bf}
E:\2024-00768_数据\2024-00768+日志文件/figure_A2.png{rm}
not found)
{p_end}
{p 0 4 2}
file {bf}
E:\2024-00768_数据\2024-00768+日志文件/figure_A2.png{rm}
saved as
PNG
format
{p_end}

{com}.         
.         
.         
.         
. ********************************************************************************
. ******************** 图A3.工具变量与内生变量的相关性 ****************************
. ********************************************************************************
. 
.         use $working_data\county_panel.dta ,clear
{txt}
{com}. 
.         
.                                                 ***--- 变量处理 ---***      
.         
.         * 生成变量的基期(2003)值
.         gen is_yr2003 = 1 if year==2003
{txt}(58,333 missing values generated)

{com}.         foreach v of varlist Grain{c -(}
{txt}  2{com}.                 
.                 bysort county_id (year): egen `v'_03 = mean(`v'*is_yr2003)
{txt}  3{com}.                 
.         {c )-}
{txt}(8,523 missing values generated)

{com}.         
.         
.         * 生成相对基期的差分
.         foreach v of varlist Grain{c -(}
{txt}  2{com}.                 
.                 gen d_`v' = `v' - `v'_03
{txt}  3{com}.                 
.         {c )-}
{txt}(13,008 missing values generated)

{com}. 
.                                                 ***--- 作图 ---***
.                                                 
.                 reg d_Grain dsim_Grain if year==2016, vce(robust)

{txt}Linear regression                               Number of obs     = {res}     2,259
                                                {txt}F(1, 2257)        =  {res}   271.98
                                                {txt}Prob > F          = {res}    0.0000
                                                {txt}R-squared         = {res}    0.2785
                                                {txt}Root MSE          =    {res} 1.5252

{txt}{hline 13}{c TT}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{col 14}{c |}{col 26}    Robust
{col 1}     d_Grain{col 14}{c |} Coefficient{col 26}  std. err.{col 38}      t{col 46}   P>|t|{col 54}     [95% con{col 67}f. interval]
{hline 13}{c +}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{space 2}dsim_Grain {c |}{col 14}{res}{space 2} 1.241556{col 26}{space 2} .0752826{col 37}{space 1}   16.49{col 46}{space 3}0.000{col 54}{space 4} 1.093925{col 67}{space 3} 1.389186
{txt}{space 7}_cons {c |}{col 14}{res}{space 2}-.0652341{col 26}{space 2} .0457274{col 37}{space 1}   -1.43{col 46}{space 3}0.154{col 54}{space 4}-.1549062{col 67}{space 3} .0244379
{txt}{hline 13}{c BT}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{res}{txt}
{com}.                 local beta : display %6.2f _b[dsim_Grain]
{res}{txt}
{com}.                 local se : display %6.2f _se[dsim_Grain]        
{res}{txt}
{com}.                 local t_stat : display %6.2f _b[dsim_Grain]/_se[dsim_Grain]
{res}{txt}
{com}.                 
.                 twoway scatter d_Grain dsim_Grain if year==2016, mcolor(black) msize(small)|| lfit d_Grain dsim_Grain  if year==2016, lcolor(black) ||, scheme(s1mono) legend(off) ytitle("{c -(}stSerif:{c -(}&Delta{c )-}{c )-}{c -(}it:{c -(}stSerif:Grain{c )-}{c )-} ({c -(}stSerif:十万吨{c )-})") xtitle("{c -(}stSerif:{c -(}&Delta{c )-}{c )-}{c -(}it:{c -(}stSerif:Grain{c )-}{c )-}{c -(}it:{c -(}stSerif:{c -(}superscript:sim{c )-}{c )-}{c )-} ({c -(}stSerif:十万吨{c )-})") xlabel(,labsize(small)) ylabel(,labsize(small)) note("coef =`beta', SE =`se', t =`t_stat'",size(small) width(5.5cm) ring(0) position(3) box bcolor(bg) lcolor(black) margin())
{res}{txt}
{com}.                 graph export "$logfiles/figure_A3.png",replace width(2000) height(1800)
{txt}{p 0 4 2}
(file {bf}
E:\2024-00768_数据\2024-00768+日志文件/figure_A3.png{rm}
not found)
{p_end}
{p 0 4 2}
file {bf}
E:\2024-00768_数据\2024-00768+日志文件/figure_A3.png{rm}
saved as
PNG
format
{p_end}

{com}.         
.         
.         
.         
.         
.         
. *******************************************************************************
. **************** 图A4.粮食增产对土地配置的影响 *********************************
. *******************************************************************************
. 
. 
. 
.         use $working_data\county_panel.dta ,clear
{txt}
{com}.         capture mkdir "$logfiles/figure_A4"
{txt}
{com}. 
.         
.                                                 ***--- 变量处理 ---***
.         
.         
.         * 生成变量的基期(2003)值
.         gen is_yr2003 = 1 if year==2003
{txt}(58,333 missing values generated)

{com}.         foreach v of varlist Grain lnGDP_pc lncstrct_land lncstrct_land_new lnfarmland_dcrs lnslope_cstrct_land{c -(}
{txt}  2{com}.                 
.                 bysort county_id (year): egen `v'_03 = mean(`v'*is_yr2003)
{txt}  3{com}.                 
.         {c )-}
{txt}(8,523 missing values generated)
(11,649 missing values generated)
(5,094 missing values generated)
(4,203 missing values generated)
(1,258 missing values generated)
(3,087 missing values generated)

{com}.         
.         
.         * 生成相对基期的差分
.         foreach v of varlist Grain lncstrct_land lncstrct_land_new lnfarmland_dcrs lnslope_cstrct_land{c -(}
{txt}  2{com}.                 
.                 gen d_`v' = `v' - `v'_03
{txt}  3{com}.                 
.         {c )-}
{txt}(13,008 missing values generated)
(5,099 missing values generated)
(22,677 missing values generated)
(20,717 missing values generated)
(26,761 missing values generated)

{com}. 
. 
.         
.                                                 ***--- 逐年差分估计 ---***
.                                                 
.         keep if year>=2003&year<=2016
{txt}(25,248 observations deleted)

{com}.         
.         foreach v of varlist d_lncstrct_land d_lncstrct_land_new d_lnfarmland_dcrs d_lnslope_cstrct_land{c -(}
{txt}  2{com}.                 
.                 statsby _b[d_Grain] _se[d_Grain],by(year) saving("$logfiles/figure_A4/est_`v'",replace): ivreghdfe `v' lnGDP_pc_03 (d_Grain = dsim_Grain), absorb(city_id) cluster(city_id)
{txt}  3{com}.                 
.                 
.         {c )-}
{res}{txt}(running {bf:ivreghdfe} on estimation sample)
{res}{p2colset 7 16 20 2}{...}

{txt}{p2col :Command:}{res:ivreghdfe d_lncstrct_land lnGDP_pc_03 (d_Grain = dsim_Grain), absorb(city_id) cluster(city_id)}{p_end}
{p2colset 7 16 20 2}{...}
{p2col :_stat_1:}{res:_b[d_Grain]}{p_end}
{p2colset 7 16 20 2}{...}
{p2col :_stat_2:}{res:_se[d_Grain]}{p_end}
           By: {res}year
{txt}{p 0 4 2}
(file {bf}
E:\2024-00768_数据\2024-00768+日志文件/figure_A4/est_d_lncstrct_land.dta{rm}
not found)
{p_end}

Statsby groups
{hline 4}{c +}{hline 3} 1 {hline 3}{c +}{hline 3} 2 {hline 3}{c +}{hline 3} 3 {hline 3}{c +}{hline 3} 4 {hline 3}{c +}{hline 3} 5 
{err}x{txt}.............
{res}{txt}(running {bf:ivreghdfe} on estimation sample)
{res}{p2colset 7 16 20 2}{...}

{txt}{p2col :Command:}{res:ivreghdfe d_lncstrct_land_new lnGDP_pc_03 (d_Grain = dsim_Grain), absorb(city_id) cluster(city_id)}{p_end}
{p2colset 7 16 20 2}{...}
{p2col :_stat_1:}{res:_b[d_Grain]}{p_end}
{p2colset 7 16 20 2}{...}
{p2col :_stat_2:}{res:_se[d_Grain]}{p_end}
           By: {res}year
{txt}{p 0 4 2}
(file {bf}
E:\2024-00768_数据\2024-00768+日志文件/figure_A4/est_d_lncstrct_land_new.dta{rm}
not found)
{p_end}

Statsby groups
{hline 4}{c +}{hline 3} 1 {hline 3}{c +}{hline 3} 2 {hline 3}{c +}{hline 3} 3 {hline 3}{c +}{hline 3} 4 {hline 3}{c +}{hline 3} 5 
{err}x{txt}.............
{res}{txt}(running {bf:ivreghdfe} on estimation sample)
{res}{p2colset 7 16 20 2}{...}

{txt}{p2col :Command:}{res:ivreghdfe d_lnfarmland_dcrs lnGDP_pc_03 (d_Grain = dsim_Grain), absorb(city_id) cluster(city_id)}{p_end}
{p2colset 7 16 20 2}{...}
{p2col :_stat_1:}{res:_b[d_Grain]}{p_end}
{p2colset 7 16 20 2}{...}
{p2col :_stat_2:}{res:_se[d_Grain]}{p_end}
           By: {res}year
{txt}{p 0 4 2}
(file {bf}
E:\2024-00768_数据\2024-00768+日志文件/figure_A4/est_d_lnfarmland_dcrs.dta{rm}
not found)
{p_end}

Statsby groups
{hline 4}{c +}{hline 3} 1 {hline 3}{c +}{hline 3} 2 {hline 3}{c +}{hline 3} 3 {hline 3}{c +}{hline 3} 4 {hline 3}{c +}{hline 3} 5 
{err}x{txt}.............
{res}{txt}(running {bf:ivreghdfe} on estimation sample)
{res}{p2colset 7 16 20 2}{...}

{txt}{p2col :Command:}{res:ivreghdfe d_lnslope_cstrct_land lnGDP_pc_03 (d_Grain = dsim_Grain), absorb(city_id) cluster(city_id)}{p_end}
{p2colset 7 16 20 2}{...}
{p2col :_stat_1:}{res:_b[d_Grain]}{p_end}
{p2colset 7 16 20 2}{...}
{p2col :_stat_2:}{res:_se[d_Grain]}{p_end}
           By: {res}year
{txt}{p 0 4 2}
(file {bf}
E:\2024-00768_数据\2024-00768+日志文件/figure_A4/est_d_lnslope_cstrct_land.dta{rm}
not found)
{p_end}

Statsby groups
{hline 4}{c +}{hline 3} 1 {hline 3}{c +}{hline 3} 2 {hline 3}{c +}{hline 3} 3 {hline 3}{c +}{hline 3} 4 {hline 3}{c +}{hline 3} 5 
{err}x{txt}.............

{com}.         
.         
. 
.                                                 ***--- 作图输出 ---***
.                         
.         * a.建设用地总面积
.         use "$logfiles/figure_A4/est_d_lncstrct_land",clear
{txt}(statsby: ivreghdfe)

{com}.         rename _stat_1 est_coef
{res}{txt}
{com}.         rename _stat_2 est_se
{res}{txt}
{com}.         replace est_coef = 0 if year==2003
{txt}(1 real change made)

{com}.         replace est_se = 0 if year==2003
{txt}(1 real change made)

{com}.         //95% CI
.         gen lower_95ci = est_coef - 1.96*est_se   //末期=基期,设为0
{txt}
{com}.         gen upper_95ci = est_coef + 1.96*est_se
{txt}
{com}.         
.         twoway connected est_coef year,msize(small) || rline lower_95ci upper_95ci year, lpattern(dash) ||, scheme(s1mono) legend(off) yline(0,lpattern(refline)) xline(2003) xlabel(2003(1)2016,labsize(vsmall)) ylabel(-0.1(0.1)0.1) ytitle("估计系数", margin(small) size(medsmall)) subtitle("a.建设用地总面积",size(medlarge)) name(figure_A4_a,replace)
{p 0 4 2}
{txt}(note:  named style
refline not found in class
linepattern,  default attributes used)
{p_end}
{res}{txt}
{com}.         
.         
.         
.         * b.新增建设用地面积
.         use "$logfiles/figure_A4/est_d_lncstrct_land_new",clear
{txt}(statsby: ivreghdfe)

{com}.         rename _stat_1 est_coef
{res}{txt}
{com}.         rename _stat_2 est_se
{res}{txt}
{com}.         replace est_coef = 0 if year==2003   //末期=基期,设为0
{txt}(1 real change made)

{com}.         replace est_se = 0 if year==2003
{txt}(1 real change made)

{com}.         //95% CI
.         gen lower_95ci = est_coef - 1.96*est_se
{txt}
{com}.         gen upper_95ci = est_coef + 1.96*est_se
{txt}
{com}.         
.         twoway connected est_coef year,msize(small) || rline lower_95ci upper_95ci year, lpattern(dash) ||, scheme(s1mono) legend(off) yline(0,lpattern(refline)) xline(2003) xlabel(2003(1)2016,labsize(vsmall)) ylabel(-0.2(0.1)0.2) ytitle("估计系数", margin(small) size(medsmall) ) subtitle("b.新开发的建设用地面积",size(medlarge)) name(figure_A4_b,replace)
{p 0 4 2}
{txt}(note:  named style
refline not found in class
linepattern,  default attributes used)
{p_end}
{res}{txt}
{com}.         
.         
.         
.         * c.被转换的耕地面积
.         use "$logfiles/figure_A4/est_d_lnfarmland_dcrs",clear
{txt}(statsby: ivreghdfe)

{com}.         rename _stat_1 est_coef
{res}{txt}
{com}.         rename _stat_2 est_se
{res}{txt}
{com}.         replace est_coef = 0 if year==2003   //末期=基期,设为0
{txt}(1 real change made)

{com}.         replace est_se = 0 if year==2003
{txt}(1 real change made)

{com}.         //95% CI
.         gen lower_95ci = est_coef - 1.96*est_se
{txt}
{com}.         gen upper_95ci = est_coef + 1.96*est_se
{txt}
{com}.         
.         twoway connected est_coef year,msize(small) || rline lower_95ci upper_95ci year, lpattern(dash) ||, scheme(s1mono) legend(off) yline(0,lpattern(refline)) xline(2003) xlabel(2003(1)2016,labsize(vsmall)) ylabel(-0.4(0.1)0.4) ytitle("估计系数", margin(small) size(medsmall) ) subtitle("c.被转换用途的耕地面积",size(medlarge)) name(figure_A4_c,replace)
{p 0 4 2}
{txt}(note:  named style
refline not found in class
linepattern,  default attributes used)
{p_end}
{res}{txt}
{com}.         
.         
.         
.         * d.建设用地平均坡度
.         use "$logfiles/figure_A4/est_d_lnslope_cstrct_land",clear
{txt}(statsby: ivreghdfe)

{com}.         rename _stat_1 est_coef
{res}{txt}
{com}.         rename _stat_2 est_se
{res}{txt}
{com}.         replace est_coef = 0 if year==2003   //末期=基期,设为0
{txt}(1 real change made)

{com}.         replace est_se = 0 if year==2003
{txt}(1 real change made)

{com}.         //95% CI
.         gen lower_95ci = est_coef - 1.96*est_se
{txt}
{com}.         gen upper_95ci = est_coef + 1.96*est_se
{txt}
{com}.         
.         twoway connected est_coef year,msize(small) || rline lower_95ci upper_95ci year, lpattern(dash) ||, scheme(s1mono) legend(off) yline(0,lpattern(refline)) xline(2003) xlabel(2003(1)2016,labsize(vsmall)) ylabel(-0.8(0.4)0.8) ytitle("估计系数", margin(small) size(medsmall)) subtitle("d.建设用地平均坡度",size(medlarge)) name(figure_A4_d,replace)
{p 0 4 2}
{txt}(note:  named style
refline not found in class
linepattern,  default attributes used)
{p_end}
{res}{txt}
{com}.                 
.         
.         * 合并
.         graph combine figure_A4_a figure_A4_b figure_A4_c figure_A4_d, cols(2) scheme(s1mono) xsize(100) ysize(66)
{p 0 4 2}
{txt}(note:  named style
refline not found in class
linepattern,  default attributes used)
{p_end}
{p 0 4 2}
{txt}(note:  named style
refline not found in class
linepattern,  default attributes used)
{p_end}
{p 0 4 2}
{txt}(note:  named style
refline not found in class
linepattern,  default attributes used)
{p_end}
{p 0 4 2}
{txt}(note:  named style
refline not found in class
linepattern,  default attributes used)
{p_end}
{res}{txt}
{com}.         graph export "$logfiles/figure_A4/figure_A4.png",replace width(4000) height(2720)
{txt}{p 0 4 2}
(file {bf}
E:\2024-00768_数据\2024-00768+日志文件/figure_A4/figure_A4.png{rm}
not found)
{p_end}
{p 0 4 2}
file {bf}
E:\2024-00768_数据\2024-00768+日志文件/figure_A4/figure_A4.png{rm}
saved as
PNG
format
{p_end}

{com}.         
. 
. 
. 
. ******************************************************************************
. ******************** 图A5.粮食增产对企业规模与效率的影响 **********************
. ******************************************************************************
. 
.         use $working_data\county_panel.dta ,clear
{txt}
{com}.         capture mkdir "$logfiles/figure_A5"
{txt}
{com}. 
.         
.                                                 ***--- 变量处理 ---***      
.         
.         * 生成变量的基期(2003)值
.         gen is_yr2003 = 1 if year==2003
{txt}(58,333 missing values generated)

{com}.         foreach v of varlist Grain lnGDP_pc lnnum_new_firms share_ov1k_new_firms lnavgemp_old_firms tfp_firms{c -(}
{txt}  2{com}.                 
.                 bysort county_id (year): egen `v'_03 = mean(`v'*is_yr2003)
{txt}  3{com}.                 
.         {c )-}
{txt}(8,523 missing values generated)
(11,649 missing values generated)
(5,648 missing values generated)
(6,468 missing values generated)
(11,371 missing values generated)
(11,365 missing values generated)

{com}.         
.         
.         * 生成相对基期的差分
.         foreach v of varlist Grain lnnum_new_firms share_ov1k_new_firms lnavgemp_old_firms tfp_firms{c -(}
{txt}  2{com}.                 
.                 gen d_`v' = `v' - `v'_03
{txt}  3{com}.                 
.         {c )-}
{txt}(13,008 missing values generated)
(10,938 missing values generated)
(12,019 missing values generated)
(32,539 missing values generated)
(30,492 missing values generated)

{com}. 
. 
.         
.                                                 ***--- 逐年差分估计 ---***
.                                                 
.         keep if year>=2003&year<=2016
{txt}(25,248 observations deleted)

{com}.         /*2003年的位置由于基期=末期，
>         差分的自变量和因变量都为0，回归无意义，会出现红叉，
>         后续会将其设为0，不影响结果。*/
.         foreach v of varlist d_lnnum_new_firms d_share_ov1k_new_firms d_lnavgemp_old_firms d_tfp_firms{c -(}
{txt}  2{com}.                 preserve
{txt}  3{com}.                 //去掉数据缺失的年份
.                 drop if `v'==.
{txt}  4{com}.                 statsby _b[d_Grain] _se[d_Grain],by(year) saving("$logfiles/figure_A5/est_`v'",replace): ivreghdfe `v' lnGDP_pc_03 (d_Grain = dsim_Grain), absorb(city_id) cluster(city_id)
{txt}  5{com}.                 restore
{txt}  6{com}.                 
.         {c )-}
{txt}(3,066 observations deleted)
{res}{txt}(running {bf:ivreghdfe} on estimation sample)
{res}{p2colset 7 16 20 2}{...}

{txt}{p2col :Command:}{res:ivreghdfe d_lnnum_new_firms lnGDP_pc_03 (d_Grain = dsim_Grain), absorb(city_id) cluster(city_id)}{p_end}
{p2colset 7 16 20 2}{...}
{p2col :_stat_1:}{res:_b[d_Grain]}{p_end}
{p2colset 7 16 20 2}{...}
{p2col :_stat_2:}{res:_se[d_Grain]}{p_end}
           By: {res}year
{txt}{p 0 4 2}
(file {bf}
E:\2024-00768_数据\2024-00768+日志文件/figure_A5/est_d_lnnum_new_firms.dta{rm}
not found)
{p_end}

Statsby groups
{hline 4}{c +}{hline 3} 1 {hline 3}{c +}{hline 3} 2 {hline 3}{c +}{hline 3} 3 {hline 3}{c +}{hline 3} 4 {hline 3}{c +}{hline 3} 5 
{err}x{txt}.............
(3,698 observations deleted)
{res}{txt}(running {bf:ivreghdfe} on estimation sample)
{res}{p2colset 7 16 20 2}{...}

{txt}{p2col :Command:}{res:ivreghdfe d_share_ov1k_new_firms lnGDP_pc_03 (d_Grain = dsim_Grain), absorb(city_id) cluster(city_id)}{p_end}
{p2colset 7 16 20 2}{...}
{p2col :_stat_1:}{res:_b[d_Grain]}{p_end}
{p2colset 7 16 20 2}{...}
{p2col :_stat_2:}{res:_se[d_Grain]}{p_end}
           By: {res}year
{txt}{p 0 4 2}
(file {bf}
E:\2024-00768_数据\2024-00768+日志文件/figure_A5/est_d_share_ov1k_new_firms.dta{rm}
not found)
{p_end}

Statsby groups
{hline 4}{c +}{hline 3} 1 {hline 3}{c +}{hline 3} 2 {hline 3}{c +}{hline 3} 3 {hline 3}{c +}{hline 3} 4 {hline 3}{c +}{hline 3} 5 
{err}x{txt}.............
(17,378 observations deleted)
{res}{txt}(running {bf:ivreghdfe} on estimation sample)
{res}{p2colset 7 16 20 2}{...}

{txt}{p2col :Command:}{res:ivreghdfe d_lnavgemp_old_firms lnGDP_pc_03 (d_Grain = dsim_Grain), absorb(city_id) cluster(city_id)}{p_end}
{p2colset 7 16 20 2}{...}
{p2col :_stat_1:}{res:_b[d_Grain]}{p_end}
{p2colset 7 16 20 2}{...}
{p2col :_stat_2:}{res:_se[d_Grain]}{p_end}
           By: {res}year
{txt}{p 0 4 2}
(file {bf}
E:\2024-00768_数据\2024-00768+日志文件/figure_A5/est_d_lnavgemp_old_firms.dta{rm}
not found)
{p_end}

Statsby groups
{hline 4}{c +}{hline 3} 1 {hline 3}{c +}{hline 3} 2 {hline 3}{c +}{hline 3} 3 {hline 3}{c +}{hline 3} 4 {hline 3}{c +}{hline 3} 5 
{err}x{txt}........
(15,348 observations deleted)
{res}{txt}(running {bf:ivreghdfe} on estimation sample)
{res}{p2colset 7 16 20 2}{...}

{txt}{p2col :Command:}{res:ivreghdfe d_tfp_firms lnGDP_pc_03 (d_Grain = dsim_Grain), absorb(city_id) cluster(city_id)}{p_end}
{p2colset 7 16 20 2}{...}
{p2col :_stat_1:}{res:_b[d_Grain]}{p_end}
{p2colset 7 16 20 2}{...}
{p2col :_stat_2:}{res:_se[d_Grain]}{p_end}
           By: {res}year
{txt}{p 0 4 2}
(file {bf}
E:\2024-00768_数据\2024-00768+日志文件/figure_A5/est_d_tfp_firms.dta{rm}
not found)
{p_end}

Statsby groups
{hline 4}{c +}{hline 3} 1 {hline 3}{c +}{hline 3} 2 {hline 3}{c +}{hline 3} 3 {hline 3}{c +}{hline 3} 4 {hline 3}{c +}{hline 3} 5 
{err}x{txt}.........

{com}. 
. 
.                                                 ***--- 作图输出 ---***
.                         
.         * a.新注册企业数
.         use "$logfiles/figure_A5/est_d_lnnum_new_firms.dta",clear
{txt}(statsby: ivreghdfe)

{com}.         rename _stat_1 est_coef
{res}{txt}
{com}.         rename _stat_2 est_se
{res}{txt}
{com}.         //2003末期=基期,设为0作基准
.         replace est_coef = 0 if year==2003   
{txt}(1 real change made)

{com}.         replace est_se = 0 if year==2003
{txt}(1 real change made)

{com}.         //95% CI
.         gen lower_95ci = est_coef - 1.96*est_se
{txt}
{com}.         gen upper_95ci = est_coef + 1.96*est_se
{txt}
{com}.         
.         twoway connected est_coef year,msize(small) || rline lower_95ci upper_95ci year, lpattern(dash) ||, scheme(s1mono) legend(off) yline(0,lpattern(refline)) xline(2003) xlabel(2003(1)2016,labsize(vsmall)) ylabel(-0.2(0.2)0.2) ytitle("估计系数", margin(small) size(medsmall) ) subtitle("a.进入企业数量",size(medlarge)) name(figure_A5_a,replace)
{p 0 4 2}
{txt}(note:  named style
refline not found in class
linepattern,  default attributes used)
{p_end}
{res}{txt}
{com}.                 
.         
.         
.         * b.新注册企业中大企业占比
.         use "$logfiles/figure_A5/est_d_share_ov1k_new_firms.dta",clear
{txt}(statsby: ivreghdfe)

{com}.         rename _stat_1 est_coef
{res}{txt}
{com}.         rename _stat_2 est_se
{res}{txt}
{com}.         //2003末期=基期,设为0作基准
.         replace est_coef = 0 if year==2003
{txt}(1 real change made)

{com}.         replace est_se = 0 if year==2003
{txt}(1 real change made)

{com}.         //95% CI
.         gen lower_95ci = est_coef - 1.96*est_se
{txt}
{com}.         gen upper_95ci = est_coef + 1.96*est_se
{txt}
{com}.         
.         twoway connected est_coef year,msize(small) || rline lower_95ci upper_95ci year, lpattern(dash) ||, scheme(s1mono) legend(off) yline(0,lpattern(refline)) xline(2003) xlabel(2003(1)2016,labsize(vsmall)) ylabel(-0.1(0.05)0.05) ytitle("估计系数", margin(small) size(medsmall)) subtitle("b.新注册企业中大企业占比",size(medlarge)) name(figure_A5_b,replace)
{p 0 4 2}
{txt}(note:  named style
refline not found in class
linepattern,  default attributes used)
{p_end}
{res}{txt}
{com}. 
.         
.                 
.         * c.在位工业企业平均就业人数
.         use "$logfiles/figure_A5/est_d_lnavgemp_old_firms.dta",clear
{txt}(statsby: ivreghdfe)

{com}.         rename _stat_1 est_coef
{res}{txt}
{com}.         rename _stat_2 est_se
{res}{txt}
{com}.         //2003末期=基期,设为0作基准
.         replace est_coef = 0 if year==2003
{txt}(1 real change made)

{com}.         replace est_se = 0 if year==2003
{txt}(1 real change made)

{com}.         //95% CI
.         gen lower_95ci = est_coef - 1.96*est_se
{txt}
{com}.         gen upper_95ci = est_coef + 1.96*est_se
{txt}
{com}.         drop if est_coef==.  //去掉数据缺失的年份
{txt}(0 observations deleted)

{com}.         
.         twoway connected est_coef year,msize(small) || rline lower_95ci upper_95ci year, lpattern(dash) ||, scheme(s1mono) legend(off) yline(0,lpattern(refline)) xline(2003) xlabel(2003(1)2013,labsize(vsmall)) ylabel(-0.3(0.1)0.3) ytitle("估计系数", margin(small) size(medsmall) ) subtitle("c.在位工业企业平均就业人数",size(medlarge)) name(figure_A5_c,replace)
{p 0 4 2}
{txt}(note:  named style
refline not found in class
linepattern,  default attributes used)
{p_end}
{res}{txt}
{com}.                 
.                 
.                 
.         * d.工业企业全要素生产率
.         use "$logfiles/figure_A5/est_d_tfp_firms",clear
{txt}(statsby: ivreghdfe)

{com}.         rename _stat_1 est_coef
{res}{txt}
{com}.         rename _stat_2 est_se
{res}{txt}
{com}.         //2003末期=基期,设为0作基准
.         replace est_coef = 0 if year==2003
{txt}(1 real change made)

{com}.         replace est_se = 0 if year==2003
{txt}(1 real change made)

{com}.         //95% CI
.         gen lower_95ci = est_coef - 1.96*est_se
{txt}
{com}.         gen upper_95ci = est_coef + 1.96*est_se
{txt}
{com}.         drop if est_coef==.  //去掉数据缺失的年份
{txt}(0 observations deleted)

{com}.         
.         twoway connected est_coef year,msize(small) || rline lower_95ci upper_95ci year, lpattern(dash) ||, scheme(s1mono) legend(off) yline(0,lpattern(refline)) xline(2003) xlabel(2003(1)2013,labsize(vsmall)) ylabel(-0.6(0.3)0.6) ytitle("估计系数", margin(small) size(medsmall) ) subtitle("d.工业企业全要素生产率",size(medlarge)) name(figure_A5_d,replace)
{p 0 4 2}
{txt}(note:  named style
refline not found in class
linepattern,  default attributes used)
{p_end}
{res}{txt}
{com}.                         
.                         
.         * 合并
.         graph combine figure_A5_a figure_A5_b figure_A5_c figure_A5_d, cols(2) scheme(s1mono) xsize(100) ysize(66)
{p 0 4 2}
{txt}(note:  named style
refline not found in class
linepattern,  default attributes used)
{p_end}
{p 0 4 2}
{txt}(note:  named style
refline not found in class
linepattern,  default attributes used)
{p_end}
{p 0 4 2}
{txt}(note:  named style
refline not found in class
linepattern,  default attributes used)
{p_end}
{p 0 4 2}
{txt}(note:  named style
refline not found in class
linepattern,  default attributes used)
{p_end}
{res}{txt}
{com}.         graph export "$logfiles/figure_A5/figure_A5.png",replace width(4000) height(2720)
{txt}{p 0 4 2}
(file {bf}
E:\2024-00768_数据\2024-00768+日志文件/figure_A5/figure_A5.png{rm}
not found)
{p_end}
{p 0 4 2}
file {bf}
E:\2024-00768_数据\2024-00768+日志文件/figure_A5/figure_A5.png{rm}
saved as
PNG
format
{p_end}

{com}.                 
. 
. 
.         
.         
. *******************************************************************************
. ******************** 图A6.粮食增产对财政收入与支出的影响  **********************
. *******************************************************************************
.         
.         use $working_data\county_panel.dta ,clear
{txt}
{com}.         capture mkdir "$logfiles/figure_A6"
{txt}
{com}. 
.         
.                                                 ***--- 变量处理 ---***      
.         
.         * 生成变量的基期(2003)值
.         gen is_yr2003 = 1 if year==2003
{txt}(58,333 missing values generated)

{com}.         foreach v of varlist Grain lnGDP_pc lntrsf_gen lntrsf_spec lnpub_expd lnpub_expd_agr{c -(}
{txt}  2{com}.                 
.                 bysort county_id (year): egen `v'_03 = mean(`v'*is_yr2003)
{txt}  3{com}.                 
.         {c )-}
{txt}(8,523 missing values generated)
(11,649 missing values generated)
(20,918 missing values generated)
(11,751 missing values generated)
(11,291 missing values generated)
(12,000 missing values generated)

{com}.         
.         
.         * 生成相对基期的差分
.         foreach v of varlist Grain lntrsf_gen lntrsf_spec lnpub_expd lnpub_expd_agr{c -(}
{txt}  2{com}.                 
.                 gen d_`v' = `v' - `v'_03
{txt}  3{com}.                 
.         {c )-}
{txt}(13,008 missing values generated)
(51,189 missing values generated)
(41,384 missing values generated)
(41,147 missing values generated)
(52,900 missing values generated)

{com}. 
. 
.         
.                                                 ***--- 逐年差分估计 ---***
.                                                 
.         keep if year>=2003&year<=2016
{txt}(25,248 observations deleted)

{com}.         /*2003年的位置由于基期=末期，
>         差分的自变量和因变量都为0，回归无意义，会出现红叉，
>         后续会将其设为0，不影响结果。*/
.         foreach v of varlist d_lntrsf_gen d_lntrsf_spec d_lnpub_expd d_lnpub_expd_agr{c -(}
{txt}  2{com}.                 
.                 preserve
{txt}  3{com}.                 drop if `v'==. //去掉数据缺失的年份
{txt}  4{com}.                 statsby _b[d_Grain] _se[d_Grain],by(year) saving("$logfiles/figure_A6/est_`v'",replace): ivreghdfe `v' lnGDP_pc_03 (d_Grain = dsim_Grain), absorb(city_id) cluster(city_id)
{txt}  5{com}.                 restore
{txt}  6{com}.                 
.         {c )-}
{txt}(27,541 observations deleted)
{res}{txt}(running {bf:ivreghdfe} on estimation sample)
{res}{p2colset 7 16 20 2}{...}

{txt}{p2col :Command:}{res:ivreghdfe d_lntrsf_gen lnGDP_pc_03 (d_Grain = dsim_Grain), absorb(city_id) cluster(city_id)}{p_end}
{p2colset 7 16 20 2}{...}
{p2col :_stat_1:}{res:_b[d_Grain]}{p_end}
{p2colset 7 16 20 2}{...}
{p2col :_stat_2:}{res:_se[d_Grain]}{p_end}
           By: {res}year
{txt}{p 0 4 2}
(file {bf}
E:\2024-00768_数据\2024-00768+日志文件/figure_A6/est_d_lntrsf_gen.dta{rm}
not found)
{p_end}

Statsby groups
{hline 4}{c +}{hline 3} 1 {hline 3}{c +}{hline 3} 2 {hline 3}{c +}{hline 3} 3 {hline 3}{c +}{hline 3} 4 {hline 3}{c +}{hline 3} 5 
{err}x{txt}....
(25,578 observations deleted)
{res}{txt}(running {bf:ivreghdfe} on estimation sample)
{res}{p2colset 7 16 20 2}{...}

{txt}{p2col :Command:}{res:ivreghdfe d_lntrsf_spec lnGDP_pc_03 (d_Grain = dsim_Grain), absorb(city_id) cluster(city_id)}{p_end}
{p2colset 7 16 20 2}{...}
{p2col :_stat_1:}{res:_b[d_Grain]}{p_end}
{p2colset 7 16 20 2}{...}
{p2col :_stat_2:}{res:_se[d_Grain]}{p_end}
           By: {res}year
{txt}{p 0 4 2}
(file {bf}
E:\2024-00768_数据\2024-00768+日志文件/figure_A6/est_d_lntrsf_spec.dta{rm}
not found)
{p_end}

Statsby groups
{hline 4}{c +}{hline 3} 1 {hline 3}{c +}{hline 3} 2 {hline 3}{c +}{hline 3} 3 {hline 3}{c +}{hline 3} 4 {hline 3}{c +}{hline 3} 5 
{err}x{txt}....
(25,452 observations deleted)
{res}{txt}(running {bf:ivreghdfe} on estimation sample)
{res}{p2colset 7 16 20 2}{...}

{txt}{p2col :Command:}{res:ivreghdfe d_lnpub_expd lnGDP_pc_03 (d_Grain = dsim_Grain), absorb(city_id) cluster(city_id)}{p_end}
{p2colset 7 16 20 2}{...}
{p2col :_stat_1:}{res:_b[d_Grain]}{p_end}
{p2colset 7 16 20 2}{...}
{p2col :_stat_2:}{res:_se[d_Grain]}{p_end}
           By: {res}year
{txt}{p 0 4 2}
(file {bf}
E:\2024-00768_数据\2024-00768+日志文件/figure_A6/est_d_lnpub_expd.dta{rm}
not found)
{p_end}

Statsby groups
{hline 4}{c +}{hline 3} 1 {hline 3}{c +}{hline 3} 2 {hline 3}{c +}{hline 3} 3 {hline 3}{c +}{hline 3} 4 {hline 3}{c +}{hline 3} 5 
{err}x{txt}....
(27,652 observations deleted)
{res}{txt}(running {bf:ivreghdfe} on estimation sample)
{res}{p2colset 7 16 20 2}{...}

{txt}{p2col :Command:}{res:ivreghdfe d_lnpub_expd_agr lnGDP_pc_03 (d_Grain = dsim_Grain), absorb(city_id) cluster(city_id)}{p_end}
{p2colset 7 16 20 2}{...}
{p2col :_stat_1:}{res:_b[d_Grain]}{p_end}
{p2colset 7 16 20 2}{...}
{p2col :_stat_2:}{res:_se[d_Grain]}{p_end}
           By: {res}year
{txt}{p 0 4 2}
(file {bf}
E:\2024-00768_数据\2024-00768+日志文件/figure_A6/est_d_lnpub_expd_agr.dta{rm}
not found)
{p_end}

Statsby groups
{hline 4}{c +}{hline 3} 1 {hline 3}{c +}{hline 3} 2 {hline 3}{c +}{hline 3} 3 {hline 3}{c +}{hline 3} 4 {hline 3}{c +}{hline 3} 5 
{err}x{txt}...

{com}.         
.         
. 
.                                                 ***--- 作图输出 ---***
.                 
.         * a.一般性转移支付收入
.         use "$logfiles/figure_A6/est_d_lntrsf_gen.dta",clear
{txt}(statsby: ivreghdfe)

{com}.         rename _stat_1 est_coef
{res}{txt}
{com}.         rename _stat_2 est_se
{res}{txt}
{com}.         replace est_coef = 0 if year==2003  //末期=基期,设为0
{txt}(1 real change made)

{com}.         replace est_se = 0 if year==2003
{txt}(1 real change made)

{com}.         //95% CI
.         gen lower_95ci = est_coef - 1.96*est_se
{txt}
{com}.         gen upper_95ci = est_coef + 1.96*est_se
{txt}
{com}.         drop if est_coef==.  //去掉数据缺失的年份
{txt}(0 observations deleted)

{com}.         
.         twoway connected est_coef year,msize(small) || rline lower_95ci upper_95ci year, lpattern(dash) ||, scheme(s1mono) legend(off) yline(0,lpattern(refline)) xline(2003) xlabel(2003(1)2007,labsize(vsmall)) ylabel(-0.4(0.2)0.4) ytitle("估计系数", margin(small) size(medsmall) ) subtitle("a.一般性转移支付收入",size(medlarge)) name(figure_A6_a,replace)
{p 0 4 2}
{txt}(note:  named style
refline not found in class
linepattern,  default attributes used)
{p_end}
{res}{txt}
{com}. 
.         
.         
.         
.         * b.专项转移支付收入
.         use "$logfiles/figure_A6/est_d_lntrsf_spec.dta",clear
{txt}(statsby: ivreghdfe)

{com}.         rename _stat_1 est_coef
{res}{txt}
{com}.         rename _stat_2 est_se
{res}{txt}
{com}.         replace est_coef = 0 if year==2003  //末期=基期,设为0
{txt}(1 real change made)

{com}.         replace est_se = 0 if year==2003
{txt}(1 real change made)

{com}.         //95% CI
.         gen lower_95ci = est_coef - 1.96*est_se
{txt}
{com}.         gen upper_95ci = est_coef + 1.96*est_se
{txt}
{com}.         drop if est_coef==.  //去掉数据缺失的年份
{txt}(0 observations deleted)

{com}.         
.         twoway connected est_coef year,msize(small) || rline lower_95ci upper_95ci year, lpattern(dash) ||, scheme(s1mono) legend(off) yline(0,lpattern(refline)) xline(2003) xlabel(2003(1)2007,labsize(vsmall)) ylabel(-0.3(0.1)0.3) ytitle("估计系数", margin(small) size(medsmall) ) subtitle("b.专项转移支付收入",size(medlarge)) name(figure_A6_b,replace)
{p 0 4 2}
{txt}(note:  named style
refline not found in class
linepattern,  default attributes used)
{p_end}
{res}{txt}
{com}. 
.         
.         
.         
.         
.         * c.一般公共预算支出
.         use "$logfiles/figure_A6/est_d_lnpub_expd.dta",clear
{txt}(statsby: ivreghdfe)

{com}.         rename _stat_1 est_coef
{res}{txt}
{com}.         rename _stat_2 est_se
{res}{txt}
{com}.         replace est_coef = 0 if year==2003  //末期=基期,设为0
{txt}(1 real change made)

{com}.         replace est_se = 0 if year==2003
{txt}(1 real change made)

{com}.         //95% CI
.         gen lower_95ci = est_coef - 1.96*est_se
{txt}
{com}.         gen upper_95ci = est_coef + 1.96*est_se
{txt}
{com}.         drop if est_coef==.  //去掉数据缺失的年份
{txt}(0 observations deleted)

{com}.         
.         twoway connected est_coef year,msize(small) || rline lower_95ci upper_95ci year, lpattern(dash) ||, scheme(s1mono) legend(off) yline(0,lpattern(refline)) xline(2003) xlabel(2003(1)2007,labsize(vsmall)) ylabel(-0.1(0.1)0.1) ytitle("估计系数", margin(small) size(medsmall) ) subtitle("c.一般公共预算支出",size(medlarge)) name(figure_A6_c,replace)
{p 0 4 2}
{txt}(note:  named style
refline not found in class
linepattern,  default attributes used)
{p_end}
{res}{txt}
{com}. 
.         
.         
.         * d.农业相关公共支出
.         use "$logfiles/figure_A6/est_d_lnpub_expd_agr.dta",clear
{txt}(statsby: ivreghdfe)

{com}.         rename _stat_1 est_coef
{res}{txt}
{com}.         rename _stat_2 est_se
{res}{txt}
{com}.         replace est_coef = 0 if year==2003  //末期=基期,设为0
{txt}(1 real change made)

{com}.         replace est_se = 0 if year==2003
{txt}(1 real change made)

{com}.         //95% CI
.         gen lower_95ci = est_coef - 1.96*est_se
{txt}
{com}.         gen upper_95ci = est_coef + 1.96*est_se
{txt}
{com}.         drop if est_coef==.  //去掉数据缺失的年份
{txt}(0 observations deleted)

{com}.         
.         twoway connected est_coef year,msize(small) || rline lower_95ci upper_95ci year, lpattern(dash) ||, scheme(s1mono) legend(off) yline(0,lpattern(refline)) xline(2003) xlabel(2003(1)2006,labsize(vsmall)) ylabel(-0.2(0.2)0.4) ytitle("估计系数", margin(small) size(medsmall) ) subtitle("d.农业相关公共支出",size(medlarge)) name(figure_A6_d,replace)
{p 0 4 2}
{txt}(note:  named style
refline not found in class
linepattern,  default attributes used)
{p_end}
{res}{txt}
{com}. 
.         
.                         
.         * 图片合并
.         graph combine figure_A6_a figure_A6_b figure_A6_c figure_A6_d, cols(2) scheme(s1mono) xsize(100) ysize(66)
{p 0 4 2}
{txt}(note:  named style
refline not found in class
linepattern,  default attributes used)
{p_end}
{p 0 4 2}
{txt}(note:  named style
refline not found in class
linepattern,  default attributes used)
{p_end}
{p 0 4 2}
{txt}(note:  named style
refline not found in class
linepattern,  default attributes used)
{p_end}
{p 0 4 2}
{txt}(note:  named style
refline not found in class
linepattern,  default attributes used)
{p_end}
{res}{txt}
{com}.         graph export "$logfiles/figure_A6/figure_A6.png",replace width(2000) height(1360)
{txt}{p 0 4 2}
(file {bf}
E:\2024-00768_数据\2024-00768+日志文件/figure_A6/figure_A6.png{rm}
not found)
{p_end}
{p 0 4 2}
file {bf}
E:\2024-00768_数据\2024-00768+日志文件/figure_A6/figure_A6.png{rm}
saved as
PNG
format
{p_end}

{com}.         
.         
. 
. 
. 
.         
. *******************************************************************************
. ************************* 表III1.工具变量排他性假设的检验 ************************
. *******************************************************************************
. 
. 
.         use $working_data\county_panel.dta ,clear
{txt}
{com}. 
.         
.                                                 ***--- 变量处理 ---***      
.         
.         * 生成变量的基期(2003)值
.         gen is_yr2003 = 1 if year==2003
{txt}(58,333 missing values generated)

{com}.         foreach v of varlist Grain lnGDP_pc{c -(}
{txt}  2{com}.                 
.                 bysort county_id (year): egen `v'_03 = mean(`v'*is_yr2003)
{txt}  3{com}.                 
.         {c )-}
{txt}(8,523 missing values generated)
(11,649 missing values generated)

{com}.         
.         
.         * 生成相对基期的差分
.         foreach v of varlist Grain lnGDP_pc{c -(}
{txt}  2{com}.                 
.                 gen d_`v' = `v' - `v'_03
{txt}  3{com}.                 
.         {c )-}
{txt}(13,008 missing values generated)
(16,346 missing values generated)

{com}. 
.         
.         * 生成结果变量的改革前变化(1998-2002)
.         gen is_yr1998 = 1 if year==1998
{txt}(58,060 missing values generated)

{com}.         gen is_yr2002 = 1 if year==2002
{txt}(58,333 missing values generated)

{com}.         
.         bysort county_id (year): egen lnGDP_pc_98 = mean(lnGDP_pc*is_yr1998)
{txt}(20,889 missing values generated)

{com}.         bysort county_id (year): egen lnGDP_pc_02 = mean(lnGDP_pc*is_yr2002)
{txt}(11,764 missing values generated)

{com}.         
.         gen d_lnGDP_pc_9802 = lnGDP_pc_02 - lnGDP_pc_98
{txt}(21,677 missing values generated)

{com}. 
.         gl control lnGDP_pc_03 
{txt}
{com}.         
.         
.         
.         
.                          ***--- 检验作物潜在产出份额对事前趋势的影响 ---***   
.         
.         * (1). 水稻
.         
.         reghdfe d_lnGDP_pc_9802 shr_potprod_rice $control if year==2016, absorb(city_id) vce(cluster city_id)
{res}{txt}(dropped 17 {browse "http://scorreia.com/research/singletons.pdf":singleton observations})
{res}{txt}({browse "http://scorreia.com/research/hdfe.pdf":MWFE estimator} converged in 1 iterations)
{res}
{txt}HDFE Linear regression{col 51}Number of obs{col 67}= {res}     1,656
{txt}Absorbing 1 HDFE group{col 51}F({res}   2{txt},{res}    286{txt}){col 67}= {res}     27.93
{txt}Statistics robust to heteroskedasticity{col 51}Prob > F{col 67}= {res}    0.0000
{txt}{col 51}R-squared{col 67}= {res}    0.4627
{txt}{col 51}Adj R-squared{col 67}= {res}    0.3495
{txt}{col 51}Within R-sq.{col 67}= {res}    0.0863
{txt}{col 1}Number of clusters ({res}city_id{txt}) {col 30}= {res}       287{txt}{col 51}Root MSE{col 67}= {res}    0.2062

{txt}{ralign 82:(Std. err. adjusted for {res:287} clusters in {res:city_id})}
{hline 17}{c TT}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{col 18}{c |}{col 30}    Robust
{col 1} d_lnGDP_pc_9802{col 18}{c |} Coefficient{col 30}  std. err.{col 42}      t{col 50}   P>|t|{col 58}     [95% con{col 71}f. interval]
{hline 17}{c +}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
shr_potprod_rice {c |}{col 18}{res}{space 2} .0643799{col 30}{space 2} .1614744{col 41}{space 1}    0.40{col 50}{space 3}0.690{col 58}{space 4}-.2534491{col 71}{space 3} .3822089
{txt}{space 5}lnGDP_pc_03 {c |}{col 18}{res}{space 2} .1609879{col 30}{space 2} .0222085{col 41}{space 1}    7.25{col 50}{space 3}0.000{col 58}{space 4} .1172751{col 71}{space 3} .2047008
{txt}{space 11}_cons {c |}{col 18}{res}{space 2}-1.122998{col 30}{space 2} .1928651{col 41}{space 1}   -5.82{col 50}{space 3}0.000{col 58}{space 4}-1.502613{col 71}{space 3}-.7433831
{txt}{hline 17}{c BT}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{res}
{txt}Absorbed degrees of freedom:
{res}{col 1}{text}{hline 13}{c TT}{hline 12}{hline 12}{hline 14}{hline 1}{c TRC}
{col 1}{text} Absorbed FE{col 14}{c |} Categories{col 27} - Redundant{col 39}  = Num. Coefs{col 54}{c |}
{res}{col 1}{text}{hline 13}{c +}{hline 12}{hline 12}{hline 14}{hline 1}{c RT}
{col 1}{text}     city_id{col 14}{c |}{space 1}      287{col 27}{space 1}      287{col 39}{result}{space 1}        0{col 53}{text}*{col 54}{c |}
{res}{col 1}{text}{hline 13}{c BT}{hline 12}{hline 12}{hline 14}{hline 1}{c BRC}
* = FE nested within cluster; treated as redundant for DoF computation
{res}{txt}
{com}.         
.         outreg2 using "$logfiles/table_III1", ctitle("rice") addtext(Controls, Y, City FE, Y) keep(shr_potprod_rice) replace excel nocons depvar dec(3)
{txt}{browse `"E:\2024-00768_数据\2024-00768+日志文件/table_III1.xml"'}
{browse `"E:\2024-00768_数据"' :dir}{com} : {txt}{stata `"seeout using "E:\2024-00768_数据\2024-00768+日志文件/table_III1.txt""':seeout}

{com}.         
.         
.         
.         * (2). 小麦
.         
.         reghdfe d_lnGDP_pc_9802 shr_potprod_wheat $control if year==2016, absorb(city_id) vce(cluster city_id)
{res}{txt}(dropped 17 {browse "http://scorreia.com/research/singletons.pdf":singleton observations})
{res}{txt}({browse "http://scorreia.com/research/hdfe.pdf":MWFE estimator} converged in 1 iterations)
{res}
{txt}HDFE Linear regression{col 51}Number of obs{col 67}= {res}     1,656
{txt}Absorbing 1 HDFE group{col 51}F({res}   2{txt},{res}    286{txt}){col 67}= {res}     27.17
{txt}Statistics robust to heteroskedasticity{col 51}Prob > F{col 67}= {res}    0.0000
{txt}{col 51}R-squared{col 67}= {res}    0.4648
{txt}{col 51}Adj R-squared{col 67}= {res}    0.3520
{txt}{col 51}Within R-sq.{col 67}= {res}    0.0899
{txt}{col 1}Number of clusters ({res}city_id{txt}) {col 30}= {res}       287{txt}{col 51}Root MSE{col 67}= {res}    0.2057

{txt}{ralign 83:(Std. err. adjusted for {res:287} clusters in {res:city_id})}
{hline 18}{c TT}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{col 19}{c |}{col 31}    Robust
{col 1}  d_lnGDP_pc_9802{col 19}{c |} Coefficient{col 31}  std. err.{col 43}      t{col 51}   P>|t|{col 59}     [95% con{col 72}f. interval]
{hline 18}{c +}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
shr_potprod_wheat {c |}{col 19}{res}{space 2} .5169009{col 31}{space 2} .1724413{col 42}{space 1}    3.00{col 51}{space 3}0.003{col 59}{space 4} .1774859{col 72}{space 3} .8563159
{txt}{space 6}lnGDP_pc_03 {c |}{col 19}{res}{space 2} .1651042{col 31}{space 2} .0223986{col 42}{space 1}    7.37{col 51}{space 3}0.000{col 59}{space 4} .1210172{col 72}{space 3} .2091913
{txt}{space 12}_cons {c |}{col 19}{res}{space 2}-1.178449{col 31}{space 2} .1956381{col 42}{space 1}   -6.02{col 51}{space 3}0.000{col 59}{space 4}-1.563522{col 72}{space 3}-.7933755
{txt}{hline 18}{c BT}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{res}
{txt}Absorbed degrees of freedom:
{res}{col 1}{text}{hline 13}{c TT}{hline 12}{hline 12}{hline 14}{hline 1}{c TRC}
{col 1}{text} Absorbed FE{col 14}{c |} Categories{col 27} - Redundant{col 39}  = Num. Coefs{col 54}{c |}
{res}{col 1}{text}{hline 13}{c +}{hline 12}{hline 12}{hline 14}{hline 1}{c RT}
{col 1}{text}     city_id{col 14}{c |}{space 1}      287{col 27}{space 1}      287{col 39}{result}{space 1}        0{col 53}{text}*{col 54}{c |}
{res}{col 1}{text}{hline 13}{c BT}{hline 12}{hline 12}{hline 14}{hline 1}{c BRC}
* = FE nested within cluster; treated as redundant for DoF computation
{res}{txt}
{com}.         
.         outreg2 using "$logfiles/table_III1", ctitle("wheat") addtext(Controls, Y, City FE, Y) keep(shr_potprod_wheat) append excel nocons depvar dec(3)
{txt}{browse `"E:\2024-00768_数据\2024-00768+日志文件/table_III1.xml"'}
{browse `"E:\2024-00768_数据"' :dir}{com} : {txt}{stata `"seeout using "E:\2024-00768_数据\2024-00768+日志文件/table_III1.txt""':seeout}

{com}.         
.         
.         
.         * (3). 玉米
.         
.         reghdfe d_lnGDP_pc_9802 shr_potprod_maize $control if year==2016, absorb(city_id) vce(cluster city_id)
{res}{txt}(dropped 17 {browse "http://scorreia.com/research/singletons.pdf":singleton observations})
{res}{txt}({browse "http://scorreia.com/research/hdfe.pdf":MWFE estimator} converged in 1 iterations)
{res}
{txt}HDFE Linear regression{col 51}Number of obs{col 67}= {res}     1,656
{txt}Absorbing 1 HDFE group{col 51}F({res}   2{txt},{res}    286{txt}){col 67}= {res}     26.84
{txt}Statistics robust to heteroskedasticity{col 51}Prob > F{col 67}= {res}    0.0000
{txt}{col 51}R-squared{col 67}= {res}    0.4633
{txt}{col 51}Adj R-squared{col 67}= {res}    0.3503
{txt}{col 51}Within R-sq.{col 67}= {res}    0.0875
{txt}{col 1}Number of clusters ({res}city_id{txt}) {col 30}= {res}       287{txt}{col 51}Root MSE{col 67}= {res}    0.2060

{txt}{ralign 83:(Std. err. adjusted for {res:287} clusters in {res:city_id})}
{hline 18}{c TT}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{col 19}{c |}{col 31}    Robust
{col 1}  d_lnGDP_pc_9802{col 19}{c |} Coefficient{col 31}  std. err.{col 43}      t{col 51}   P>|t|{col 59}     [95% con{col 72}f. interval]
{hline 18}{c +}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
shr_potprod_maize {c |}{col 19}{res}{space 2} .2814485{col 31}{space 2}  .223432{col 42}{space 1}    1.26{col 51}{space 3}0.209{col 59}{space 4}-.1583311{col 72}{space 3} .7212281
{txt}{space 6}lnGDP_pc_03 {c |}{col 19}{res}{space 2} .1618892{col 31}{space 2} .0220948{col 42}{space 1}    7.33{col 51}{space 3}0.000{col 59}{space 4} .1184002{col 72}{space 3} .2053781
{txt}{space 12}_cons {c |}{col 19}{res}{space 2}-1.140353{col 31}{space 2} .1916653{col 42}{space 1}   -5.95{col 51}{space 3}0.000{col 59}{space 4}-1.517606{col 72}{space 3}-.7630994
{txt}{hline 18}{c BT}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{res}
{txt}Absorbed degrees of freedom:
{res}{col 1}{text}{hline 13}{c TT}{hline 12}{hline 12}{hline 14}{hline 1}{c TRC}
{col 1}{text} Absorbed FE{col 14}{c |} Categories{col 27} - Redundant{col 39}  = Num. Coefs{col 54}{c |}
{res}{col 1}{text}{hline 13}{c +}{hline 12}{hline 12}{hline 14}{hline 1}{c RT}
{col 1}{text}     city_id{col 14}{c |}{space 1}      287{col 27}{space 1}      287{col 39}{result}{space 1}        0{col 53}{text}*{col 54}{c |}
{res}{col 1}{text}{hline 13}{c BT}{hline 12}{hline 12}{hline 14}{hline 1}{c BRC}
* = FE nested within cluster; treated as redundant for DoF computation
{res}{txt}
{com}.         
.         outreg2 using "$logfiles/table_III1", ctitle("maize") addtext(Controls, Y, City FE, Y) keep(shr_potprod_maize) append excel nocons depvar dec(3)
{txt}{browse `"E:\2024-00768_数据\2024-00768+日志文件/table_III1.xml"'}
{browse `"E:\2024-00768_数据"' :dir}{com} : {txt}{stata `"seeout using "E:\2024-00768_数据\2024-00768+日志文件/table_III1.txt""':seeout}

{com}.         
.         
.         * (4). 大豆
.         
.         reghdfe d_lnGDP_pc_9802 shr_potprod_soybean $control if year==2016, absorb(city_id) vce(cluster city_id)
{res}{txt}(dropped 17 {browse "http://scorreia.com/research/singletons.pdf":singleton observations})
{res}{txt}({browse "http://scorreia.com/research/hdfe.pdf":MWFE estimator} converged in 1 iterations)
{res}
{txt}HDFE Linear regression{col 51}Number of obs{col 67}= {res}     1,656
{txt}Absorbing 1 HDFE group{col 51}F({res}   2{txt},{res}    286{txt}){col 67}= {res}     27.43
{txt}Statistics robust to heteroskedasticity{col 51}Prob > F{col 67}= {res}    0.0000
{txt}{col 51}R-squared{col 67}= {res}    0.4632
{txt}{col 51}Adj R-squared{col 67}= {res}    0.3501
{txt}{col 51}Within R-sq.{col 67}= {res}    0.0872
{txt}{col 1}Number of clusters ({res}city_id{txt}) {col 30}= {res}       287{txt}{col 51}Root MSE{col 67}= {res}    0.2061

{txt}{ralign 85:(Std. err. adjusted for {res:287} clusters in {res:city_id})}
{hline 20}{c TT}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{col 21}{c |}{col 33}    Robust
{col 1}    d_lnGDP_pc_9802{col 21}{c |} Coefficient{col 33}  std. err.{col 45}      t{col 53}   P>|t|{col 61}     [95% con{col 74}f. interval]
{hline 20}{c +}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
shr_potprod_soybean {c |}{col 21}{res}{space 2} .1430696{col 33}{space 2} .1082133{col 44}{space 1}    1.32{col 53}{space 3}0.187{col 61}{space 4}-.0699259{col 74}{space 3} .3560652
{txt}{space 8}lnGDP_pc_03 {c |}{col 21}{res}{space 2} .1612322{col 33}{space 2} .0220172{col 44}{space 1}    7.32{col 53}{space 3}0.000{col 61}{space 4}  .117896{col 74}{space 3} .2045684
{txt}{space 14}_cons {c |}{col 21}{res}{space 2}-1.128985{col 33}{space 2} .1892906{col 44}{space 1}   -5.96{col 53}{space 3}0.000{col 61}{space 4}-1.501564{col 74}{space 3}-.7564052
{txt}{hline 20}{c BT}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{res}
{txt}Absorbed degrees of freedom:
{res}{col 1}{text}{hline 13}{c TT}{hline 12}{hline 12}{hline 14}{hline 1}{c TRC}
{col 1}{text} Absorbed FE{col 14}{c |} Categories{col 27} - Redundant{col 39}  = Num. Coefs{col 54}{c |}
{res}{col 1}{text}{hline 13}{c +}{hline 12}{hline 12}{hline 14}{hline 1}{c RT}
{col 1}{text}     city_id{col 14}{c |}{space 1}      287{col 27}{space 1}      287{col 39}{result}{space 1}        0{col 53}{text}*{col 54}{c |}
{res}{col 1}{text}{hline 13}{c BT}{hline 12}{hline 12}{hline 14}{hline 1}{c BRC}
* = FE nested within cluster; treated as redundant for DoF computation
{res}{txt}
{com}.         
.         outreg2 using "$logfiles/table_III1", ctitle("soybean") addtext(Controls, Y, City FE, Y) keep(shr_potprod_soybean) append excel nocons depvar dec(3)
{txt}{browse `"E:\2024-00768_数据\2024-00768+日志文件/table_III1.xml"'}
{browse `"E:\2024-00768_数据"' :dir}{com} : {txt}{stata `"seeout using "E:\2024-00768_数据\2024-00768+日志文件/table_III1.txt""':seeout}

{com}.         
.         
.         * (5). 谷子
.         
.         reghdfe d_lnGDP_pc_9802 shr_potprod_millet $control if year==2016, absorb(city_id) vce(cluster city_id)
{res}{txt}(dropped 17 {browse "http://scorreia.com/research/singletons.pdf":singleton observations})
{res}{txt}({browse "http://scorreia.com/research/hdfe.pdf":MWFE estimator} converged in 1 iterations)
{res}
{txt}HDFE Linear regression{col 51}Number of obs{col 67}= {res}     1,656
{txt}Absorbing 1 HDFE group{col 51}F({res}   2{txt},{res}    286{txt}){col 67}= {res}     27.62
{txt}Statistics robust to heteroskedasticity{col 51}Prob > F{col 67}= {res}    0.0000
{txt}{col 51}R-squared{col 67}= {res}    0.4639
{txt}{col 51}Adj R-squared{col 67}= {res}    0.3510
{txt}{col 51}Within R-sq.{col 67}= {res}    0.0885
{txt}{col 1}Number of clusters ({res}city_id{txt}) {col 30}= {res}       287{txt}{col 51}Root MSE{col 67}= {res}    0.2059

{txt}{ralign 84:(Std. err. adjusted for {res:287} clusters in {res:city_id})}
{hline 19}{c TT}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{col 20}{c |}{col 32}    Robust
{col 1}   d_lnGDP_pc_9802{col 20}{c |} Coefficient{col 32}  std. err.{col 44}      t{col 52}   P>|t|{col 60}     [95% con{col 73}f. interval]
{hline 19}{c +}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
shr_potprod_millet {c |}{col 20}{res}{space 2} .2464989{col 32}{space 2} .1417863{col 43}{space 1}    1.74{col 52}{space 3}0.083{col 60}{space 4} -.032578{col 73}{space 3} .5255758
{txt}{space 7}lnGDP_pc_03 {c |}{col 20}{res}{space 2} .1615375{col 32}{space 2} .0219444{col 43}{space 1}    7.36{col 52}{space 3}0.000{col 60}{space 4} .1183444{col 73}{space 3} .2047306
{txt}{space 13}_cons {c |}{col 20}{res}{space 2}-1.136225{col 32}{space 2} .1891961{col 43}{space 1}   -6.01{col 52}{space 3}0.000{col 60}{space 4}-1.508619{col 73}{space 3} -.763832
{txt}{hline 19}{c BT}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{res}
{txt}Absorbed degrees of freedom:
{res}{col 1}{text}{hline 13}{c TT}{hline 12}{hline 12}{hline 14}{hline 1}{c TRC}
{col 1}{text} Absorbed FE{col 14}{c |} Categories{col 27} - Redundant{col 39}  = Num. Coefs{col 54}{c |}
{res}{col 1}{text}{hline 13}{c +}{hline 12}{hline 12}{hline 14}{hline 1}{c RT}
{col 1}{text}     city_id{col 14}{c |}{space 1}      287{col 27}{space 1}      287{col 39}{result}{space 1}        0{col 53}{text}*{col 54}{c |}
{res}{col 1}{text}{hline 13}{c BT}{hline 12}{hline 12}{hline 14}{hline 1}{c BRC}
* = FE nested within cluster; treated as redundant for DoF computation
{res}{txt}
{com}.         
.         outreg2 using "$logfiles/table_III1", ctitle("millet") addtext(Controls, Y, City FE, Y) keep(shr_potprod_millet) append excel nocons depvar dec(3)
{txt}{browse `"E:\2024-00768_数据\2024-00768+日志文件/table_III1.xml"'}
{browse `"E:\2024-00768_数据"' :dir}{com} : {txt}{stata `"seeout using "E:\2024-00768_数据\2024-00768+日志文件/table_III1.txt""':seeout}

{com}.         
.         
.         * (6). 高粱
.         
.         reghdfe d_lnGDP_pc_9802 shr_potprod_sorghum $control if year==2016, absorb(city_id) vce(cluster city_id)
{res}{txt}(dropped 17 {browse "http://scorreia.com/research/singletons.pdf":singleton observations})
{res}{txt}({browse "http://scorreia.com/research/hdfe.pdf":MWFE estimator} converged in 1 iterations)
{res}
{txt}HDFE Linear regression{col 51}Number of obs{col 67}= {res}     1,656
{txt}Absorbing 1 HDFE group{col 51}F({res}   2{txt},{res}    286{txt}){col 67}= {res}     26.85
{txt}Statistics robust to heteroskedasticity{col 51}Prob > F{col 67}= {res}    0.0000
{txt}{col 51}R-squared{col 67}= {res}    0.4633
{txt}{col 51}Adj R-squared{col 67}= {res}    0.3502
{txt}{col 51}Within R-sq.{col 67}= {res}    0.0874
{txt}{col 1}Number of clusters ({res}city_id{txt}) {col 30}= {res}       287{txt}{col 51}Root MSE{col 67}= {res}    0.2060

{txt}{ralign 85:(Std. err. adjusted for {res:287} clusters in {res:city_id})}
{hline 20}{c TT}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{col 21}{c |}{col 33}    Robust
{col 1}    d_lnGDP_pc_9802{col 21}{c |} Coefficient{col 33}  std. err.{col 45}      t{col 53}   P>|t|{col 61}     [95% con{col 74}f. interval]
{hline 20}{c +}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
shr_potprod_sorghum {c |}{col 21}{res}{space 2} .1443074{col 33}{space 2} .1555383{col 44}{space 1}    0.93{col 53}{space 3}0.354{col 61}{space 4}-.1618375{col 74}{space 3} .4504524
{txt}{space 8}lnGDP_pc_03 {c |}{col 21}{res}{space 2} .1613126{col 33}{space 2} .0220355{col 44}{space 1}    7.32{col 53}{space 3}0.000{col 61}{space 4} .1179403{col 74}{space 3} .2046848
{txt}{space 14}_cons {c |}{col 21}{res}{space 2}-1.129234{col 33}{space 2} .1898897{col 44}{space 1}   -5.95{col 53}{space 3}0.000{col 61}{space 4}-1.502993{col 74}{space 3}-.7554755
{txt}{hline 20}{c BT}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{res}
{txt}Absorbed degrees of freedom:
{res}{col 1}{text}{hline 13}{c TT}{hline 12}{hline 12}{hline 14}{hline 1}{c TRC}
{col 1}{text} Absorbed FE{col 14}{c |} Categories{col 27} - Redundant{col 39}  = Num. Coefs{col 54}{c |}
{res}{col 1}{text}{hline 13}{c +}{hline 12}{hline 12}{hline 14}{hline 1}{c RT}
{col 1}{text}     city_id{col 14}{c |}{space 1}      287{col 27}{space 1}      287{col 39}{result}{space 1}        0{col 53}{text}*{col 54}{c |}
{res}{col 1}{text}{hline 13}{c BT}{hline 12}{hline 12}{hline 14}{hline 1}{c BRC}
* = FE nested within cluster; treated as redundant for DoF computation
{res}{txt}
{com}.         
.         outreg2 using "$logfiles/table_III1", ctitle("sorghum") addtext(Controls, Y, City FE, Y) keep(shr_potprod_sorghum) append excel nocons depvar dec(3)
{txt}{browse `"E:\2024-00768_数据\2024-00768+日志文件/table_III1.xml"'}
{browse `"E:\2024-00768_数据"' :dir}{com} : {txt}{stata `"seeout using "E:\2024-00768_数据\2024-00768+日志文件/table_III1.txt""':seeout}

{com}.         
.         
.         
.                           ***--- 用其他IV估计 ---***       
.         
.         * (7). 构建IV时去除小麦和谷子
.         
.         ivreghdfe d_lnGDP_pc $control (d_Grain = dsim_Grain_dwm) if year==2016, absorb(city_id) cluster(city_id)
{res}{txt}(dropped 11 {browse "http://scorreia.com/research/singletons.pdf":singleton observations})
{res}{txt}({browse "http://scorreia.com/research/hdfe.pdf":MWFE estimator} converged in 1 iterations)
{res}
{txt}IV (2SLS) estimation
{hline 20}

Estimates efficient for homoskedasticity only
Statistics robust to heteroskedasticity and clustering on city_id

Number of clusters (city_id) = {col 33}{res}   276{txt}{col 55}Number of obs = {res}    1789
{txt}{col 55}F(  2,   275) = {res}   81.81
{txt}{col 55}Prob > F      = {res}  0.0000
{txt}Total (centered) SS     = {res} 129.3586903{txt}{col 55}Centered R2   = {res}  0.1548
{txt}Total (uncentered) SS   = {res} 129.3586903{txt}{col 55}Uncentered R2 = {res}  0.1548
{txt}Residual SS             = {res} 109.3323357{txt}{col 55}Root MSE      = {res}   .2474

{txt}{hline 13}{c TT}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{col 14}{c |}{col 26}    Robust
{col 1}  d_lnGDP_pc{col 14}{c |} Coefficient{col 26}  std. err.{col 38}      t{col 46}   P>|t|{col 54}     [95% con{col 67}f. interval]
{hline 13}{c +}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{space 5}d_Grain {c |}{col 14}{res}{space 2}-.0628607{col 26}{space 2} .0141756{col 37}{space 1}   -4.43{col 46}{space 3}0.000{col 54}{space 4}-.0907672{col 67}{space 3}-.0349543
{txt}{space 1}lnGDP_pc_03 {c |}{col 14}{res}{space 2}-.3064942{col 26}{space 2} .0244375{col 37}{space 1}  -12.54{col 46}{space 3}0.000{col 54}{space 4}-.3546026{col 67}{space 3}-.2583859
{txt}{hline 13}{c BT}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{help ivreg2##idtest:Underidentification test} (Kleibergen-Paap rk LM statistic):{res}{col 71}  27.829
{txt}{col 52}Chi-sq({res}1{txt}) P-val =  {res}{col 73}0.0000
{txt}{hline 78}
{help ivreg2##widtest:Weak identification test} (Cragg-Donald Wald F statistic):{res}{col 71} 478.825
{txt}                         (Kleibergen-Paap rk Wald F statistic):{res}{col 71}  52.653
{txt}Stock-Yogo weak ID test critical values:{res}{txt}{col 42}10% maximal IV size{res}{col 73} 16.38
{txt}{col 42}15% maximal IV size{res}{col 73}  8.96
{txt}{col 42}20% maximal IV size{res}{col 73}  6.66
{txt}{col 42}25% maximal IV size{res}{col 73}  5.53
{txt}Source: Stock-Yogo (2005).  Reproduced by permission.
NB: Critical values are for Cragg-Donald F statistic and i.i.d. errors.
{hline 78}
{help ivreg2##overidtests:Hansen J statistic} (overidentification test of all instruments):{res}{col 71}   0.000
{txt}{col 50}(equation exactly identified)
{hline 78}
Instrumented:{col 23}d_Grain
Included instruments:{col 23}lnGDP_pc_03
Excluded instruments:{col 23}dsim_Grain_dwm
{help ivreg2##partial:Partialled-out}:{col 23}_cons
{col 23}nb: total SS, model F and R2s are after partialling-out;
{col 23}    any {help ivreg2##s_small:small-sample adjustments} include partialled-out
{col 23}    variables in regressor count K
{hline 78}
{res}
{txt}Absorbed degrees of freedom:
{res}{col 1}{text}{hline 13}{c TT}{hline 12}{hline 12}{hline 14}{hline 1}{c TRC}
{col 1}{text} Absorbed FE{col 14}{c |} Categories{col 27} - Redundant{col 39}  = Num. Coefs{col 54}{c |}
{res}{col 1}{text}{hline 13}{c +}{hline 12}{hline 12}{hline 14}{hline 1}{c RT}
{col 1}{text}     city_id{col 14}{c |}{space 1}      276{col 27}{space 1}      276{col 39}{result}{space 1}        0{col 53}{text}*{col 54}{c |}
{res}{col 1}{text}{hline 13}{c BT}{hline 12}{hline 12}{hline 14}{hline 1}{c BRC}
* = FE nested within cluster; treated as redundant for DoF computation
{res}{txt}
{com}.         
.         outreg2 using "$logfiles/table_III1", ctitle("drop wheat&millet") addtext(Controls, Y, City FE, Y) keep(d_Grain) append excel nocons nor2 depvar dec(3) 
{txt}{browse `"E:\2024-00768_数据\2024-00768+日志文件/table_III1.xml"'}
{browse `"E:\2024-00768_数据"' :dir}{com} : {txt}{stata `"seeout using "E:\2024-00768_数据\2024-00768+日志文件/table_III1.txt""':seeout}

{com}.         
.         
.         
.         * (8). 用所有作物的潜在产出份额作IV，进行过度识别检验
.         
.         global ivset = "(d_Grain = shr_potprod_rice shr_potprod_wheat shr_potprod_maize shr_potprod_soybean shr_potprod_millet shr_potprod_sorghum)"
{txt}
{com}.         
.         ivreghdfe d_lnGDP_pc $control $ivset if year==2016, absorb(city_id) cluster(city_id)
{res}{txt}(dropped 11 {browse "http://scorreia.com/research/singletons.pdf":singleton observations})
{res}{txt}({browse "http://scorreia.com/research/hdfe.pdf":MWFE estimator} converged in 1 iterations)
{res}
{txt}IV (2SLS) estimation
{hline 20}

Estimates efficient for homoskedasticity only
Statistics robust to heteroskedasticity and clustering on city_id

Number of clusters (city_id) = {col 33}{res}   276{txt}{col 55}Number of obs = {res}    1789
{txt}{col 55}F(  2,   275) = {res}   83.36
{txt}{col 55}Prob > F      = {res}  0.0000
{txt}Total (centered) SS     = {res} 129.3586903{txt}{col 55}Centered R2   = {res}  0.1696
{txt}Total (uncentered) SS   = {res} 129.3586903{txt}{col 55}Uncentered R2 = {res}  0.1696
{txt}Residual SS             = {res} 107.4227848{txt}{col 55}Root MSE      = {res}   .2452

{txt}{hline 13}{c TT}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{col 14}{c |}{col 26}    Robust
{col 1}  d_lnGDP_pc{col 14}{c |} Coefficient{col 26}  std. err.{col 38}      t{col 46}   P>|t|{col 54}     [95% con{col 67}f. interval]
{hline 13}{c +}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{space 5}d_Grain {c |}{col 14}{res}{space 2}-.0462878{col 26}{space 2} .0129645{col 37}{space 1}   -3.57{col 46}{space 3}0.000{col 54}{space 4}-.0718101{col 67}{space 3}-.0207656
{txt}{space 1}lnGDP_pc_03 {c |}{col 14}{res}{space 2} -.298817{col 26}{space 2} .0236011{col 37}{space 1}  -12.66{col 46}{space 3}0.000{col 54}{space 4}-.3452789{col 67}{space 3}-.2523552
{txt}{hline 13}{c BT}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{help ivreg2##idtest:Underidentification test} (Kleibergen-Paap rk LM statistic):{res}{col 71}  39.546
{txt}{col 52}Chi-sq({res}6{txt}) P-val =  {res}{col 73}0.0000
{txt}{hline 78}
{help ivreg2##widtest:Weak identification test} (Cragg-Donald Wald F statistic):{res}{col 71} 137.697
{txt}                         (Kleibergen-Paap rk Wald F statistic):{res}{col 71}  15.882
{txt}Stock-Yogo weak ID test critical values:{res}{txt}{col 42} 5% maximal IV relative bias{res}{col 73} 19.28
{txt}{col 42}10% maximal IV relative bias{res}{col 73} 11.12
{txt}{col 42}20% maximal IV relative bias{res}{col 73}  6.76
{txt}{col 42}30% maximal IV relative bias{res}{col 73}  5.15
{txt}{col 42}10% maximal IV size{res}{col 73} 29.18
{txt}{col 42}15% maximal IV size{res}{col 73} 16.23
{txt}{col 42}20% maximal IV size{res}{col 73} 11.72
{txt}{col 42}25% maximal IV size{res}{col 73}  9.38
{txt}Source: Stock-Yogo (2005).  Reproduced by permission.
NB: Critical values are for Cragg-Donald F statistic and i.i.d. errors.
{hline 78}
{help ivreg2##overidtests:Hansen J statistic} (overidentification test of all instruments):{res}{col 71}   4.645
{txt}{col 52}Chi-sq({res}5{txt}) P-val =  {res}{col 73}0.4607
{txt}{hline 78}
Instrumented:{col 23}d_Grain
Included instruments:{col 23}lnGDP_pc_03
Excluded instruments:{col 23}shr_potprod_rice shr_potprod_wheat shr_potprod_maize
{col 23}shr_potprod_soybean shr_potprod_millet shr_potprod_sorghum
{help ivreg2##partial:Partialled-out}:{col 23}_cons
{col 23}nb: total SS, model F and R2s are after partialling-out;
{col 23}    any {help ivreg2##s_small:small-sample adjustments} include partialled-out
{col 23}    variables in regressor count K
{hline 78}
{res}
{txt}Absorbed degrees of freedom:
{res}{col 1}{text}{hline 13}{c TT}{hline 12}{hline 12}{hline 14}{hline 1}{c TRC}
{col 1}{text} Absorbed FE{col 14}{c |} Categories{col 27} - Redundant{col 39}  = Num. Coefs{col 54}{c |}
{res}{col 1}{text}{hline 13}{c +}{hline 12}{hline 12}{hline 14}{hline 1}{c RT}
{col 1}{text}     city_id{col 14}{c |}{space 1}      276{col 27}{space 1}      276{col 39}{result}{space 1}        0{col 53}{text}*{col 54}{c |}
{res}{col 1}{text}{hline 13}{c BT}{hline 12}{hline 12}{hline 14}{hline 1}{c BRC}
* = FE nested within cluster; treated as redundant for DoF computation
{res}{txt}
{com}. 
.         outreg2 using "$logfiles/table_III1", ctitle("overID 2SLS") addtext(Controls, Y, City FE, Y) addstat(OverID p, e(jp)) adec(3) keep(d_Grain) append excel nocons nor2 depvar dec(3)
{txt}{browse `"E:\2024-00768_数据\2024-00768+日志文件/table_III1.xml"'}
{browse `"E:\2024-00768_数据"' :dir}{com} : {txt}{stata `"seeout using "E:\2024-00768_数据\2024-00768+日志文件/table_III1.txt""':seeout}

{com}. 
.         
.         
.         
. *******************************************************************************
. *********** 表IV.粮食增产与县域经济发展：产区和地理区域的异质性 ****************
. *******************************************************************************
. 
.         use $working_data\county_panel.dta ,clear
{txt}
{com}. 
.         
.                                                 ***--- 变量处理 ---***      
.         
.         * 生成变量的基期(2003)值
.         gen is_yr2003 = 1 if year==2003
{txt}(58,333 missing values generated)

{com}.         foreach v of varlist Grain lnGDP_pc{c -(}
{txt}  2{com}.                 
.                 bysort county_id (year): egen `v'_03 = mean(`v'*is_yr2003)
{txt}  3{com}.                 
.         {c )-}
{txt}(8,523 missing values generated)
(11,649 missing values generated)

{com}.         
.         
.         * 生成相对基期的差分
.         foreach v of varlist Grain lnGDP_pc{c -(}
{txt}  2{com}.                 
.                 gen d_`v' = `v' - `v'_03
{txt}  3{com}.                 
.         {c )-}
{txt}(13,008 missing values generated)
(16,346 missing values generated)

{com}. 
.                 
.                           ***--- 分产销区异质性 ---***
.         
.         * (1).主产区
.         
.         ivreghdfe d_lnGDP_pc lnGDP_pc_03 (d_Grain = dsim_Grain) if year==2016&is_zcq==1, absorb(city_id) cluster(city_id)
{res}{txt}(dropped 4 {browse "http://scorreia.com/research/singletons.pdf":singleton observations})
{res}{txt}({browse "http://scorreia.com/research/hdfe.pdf":MWFE estimator} converged in 1 iterations)
{res}
{txt}IV (2SLS) estimation
{hline 20}

Estimates efficient for homoskedasticity only
Statistics robust to heteroskedasticity and clustering on city_id

Number of clusters (city_id) = {col 33}{res}   163{txt}{col 55}Number of obs = {res}     998
{txt}{col 55}F(  2,   162) = {res}   41.51
{txt}{col 55}Prob > F      = {res}  0.0000
{txt}Total (centered) SS     = {res} 66.77658142{txt}{col 55}Centered R2   = {res}  0.1117
{txt}Total (uncentered) SS   = {res} 66.77658142{txt}{col 55}Uncentered R2 = {res}  0.1117
{txt}Residual SS             = {res} 59.32095905{txt}{col 55}Root MSE      = {res}   .2442

{txt}{hline 13}{c TT}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{col 14}{c |}{col 26}    Robust
{col 1}  d_lnGDP_pc{col 14}{c |} Coefficient{col 26}  std. err.{col 38}      t{col 46}   P>|t|{col 54}     [95% con{col 67}f. interval]
{hline 13}{c +}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{space 5}d_Grain {c |}{col 14}{res}{space 2}-.0622801{col 26}{space 2} .0127849{col 37}{space 1}   -4.87{col 46}{space 3}0.000{col 54}{space 4}-.0875266{col 67}{space 3}-.0370336
{txt}{space 1}lnGDP_pc_03 {c |}{col 14}{res}{space 2}-.3224114{col 26}{space 2} .0395332{col 37}{space 1}   -8.16{col 46}{space 3}0.000{col 54}{space 4}-.4004783{col 67}{space 3}-.2443446
{txt}{hline 13}{c BT}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{help ivreg2##idtest:Underidentification test} (Kleibergen-Paap rk LM statistic):{res}{col 71}  26.923
{txt}{col 52}Chi-sq({res}1{txt}) P-val =  {res}{col 73}0.0000
{txt}{hline 78}
{help ivreg2##widtest:Weak identification test} (Cragg-Donald Wald F statistic):{res}{col 71} 361.974
{txt}                         (Kleibergen-Paap rk Wald F statistic):{res}{col 71}  55.911
{txt}Stock-Yogo weak ID test critical values:{res}{txt}{col 42}10% maximal IV size{res}{col 73} 16.38
{txt}{col 42}15% maximal IV size{res}{col 73}  8.96
{txt}{col 42}20% maximal IV size{res}{col 73}  6.66
{txt}{col 42}25% maximal IV size{res}{col 73}  5.53
{txt}Source: Stock-Yogo (2005).  Reproduced by permission.
NB: Critical values are for Cragg-Donald F statistic and i.i.d. errors.
{hline 78}
{help ivreg2##overidtests:Hansen J statistic} (overidentification test of all instruments):{res}{col 71}   0.000
{txt}{col 50}(equation exactly identified)
{hline 78}
Instrumented:{col 23}d_Grain
Included instruments:{col 23}lnGDP_pc_03
Excluded instruments:{col 23}dsim_Grain
{help ivreg2##partial:Partialled-out}:{col 23}_cons
{col 23}nb: total SS, model F and R2s are after partialling-out;
{col 23}    any {help ivreg2##s_small:small-sample adjustments} include partialled-out
{col 23}    variables in regressor count K
{hline 78}
{res}
{txt}Absorbed degrees of freedom:
{res}{col 1}{text}{hline 13}{c TT}{hline 12}{hline 12}{hline 14}{hline 1}{c TRC}
{col 1}{text} Absorbed FE{col 14}{c |} Categories{col 27} - Redundant{col 39}  = Num. Coefs{col 54}{c |}
{res}{col 1}{text}{hline 13}{c +}{hline 12}{hline 12}{hline 14}{hline 1}{c RT}
{col 1}{text}     city_id{col 14}{c |}{space 1}      163{col 27}{space 1}      163{col 39}{result}{space 1}        0{col 53}{text}*{col 54}{c |}
{res}{col 1}{text}{hline 13}{c BT}{hline 12}{hline 12}{hline 14}{hline 1}{c BRC}
* = FE nested within cluster; treated as redundant for DoF computation
{res}{txt}
{com}.         
.         outreg2 using "$logfiles/table_IV1", ctitle("zcq") addtext(Controls, Y, City FE, Y) replace excel nocons nor2 depvar addstat(K-P Wald F, e(rkf)) keep(d_Grain) adec(3) dec(3)
{txt}{browse `"E:\2024-00768_数据\2024-00768+日志文件/table_IV1.xml"'}
{browse `"E:\2024-00768_数据"' :dir}{com} : {txt}{stata `"seeout using "E:\2024-00768_数据\2024-00768+日志文件/table_IV1.txt""':seeout}

{com}.         
.         
.         * (2).主销区
.         
.         ivreghdfe d_lnGDP_pc lnGDP_pc_03 (d_Grain = dsim_Grain) if year==2016&is_zxq==1, absorb(city_id) cluster(city_id)
{res}{txt}(dropped 2 {browse "http://scorreia.com/research/singletons.pdf":singleton observations})
{res}{txt}({browse "http://scorreia.com/research/hdfe.pdf":MWFE estimator} converged in 1 iterations)
{res}
{txt}IV (2SLS) estimation
{hline 20}

Estimates efficient for homoskedasticity only
Statistics robust to heteroskedasticity and clustering on city_id

Number of clusters (city_id) = {col 33}{res}    18{txt}{col 55}Number of obs = {res}     115
{txt}{col 55}F(  2,    17) = {res}    6.04
{txt}{col 55}Prob > F      = {res}  0.0104
{txt}Total (centered) SS     = {res} 3.350646031{txt}{col 55}Centered R2   = {res}  0.1284
{txt}Total (uncentered) SS   = {res} 3.350646031{txt}{col 55}Uncentered R2 = {res}  0.1284
{txt}Residual SS             = {res} 2.920565299{txt}{col 55}Root MSE      = {res}   .1615

{txt}{hline 13}{c TT}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{col 14}{c |}{col 26}    Robust
{col 1}  d_lnGDP_pc{col 14}{c |} Coefficient{col 26}  std. err.{col 38}      t{col 46}   P>|t|{col 54}     [95% con{col 67}f. interval]
{hline 13}{c +}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{space 5}d_Grain {c |}{col 14}{res}{space 2} .2940493{col 26}{space 2} .4311897{col 37}{space 1}    0.68{col 46}{space 3}0.504{col 54}{space 4}-.6156816{col 67}{space 3}  1.20378
{txt}{space 1}lnGDP_pc_03 {c |}{col 14}{res}{space 2}-.1110314{col 26}{space 2} .1040557{col 37}{space 1}   -1.07{col 46}{space 3}0.301{col 54}{space 4}-.3305699{col 67}{space 3}  .108507
{txt}{hline 13}{c BT}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{help ivreg2##idtest:Underidentification test} (Kleibergen-Paap rk LM statistic):{res}{col 71}   1.132
{txt}{col 52}Chi-sq({res}1{txt}) P-val =  {res}{col 73}0.2874
{txt}{hline 78}
{help ivreg2##widtest:Weak identification test} (Cragg-Donald Wald F statistic):{res}{col 71}   5.768
{txt}                         (Kleibergen-Paap rk Wald F statistic):{res}{col 71}   1.198
{txt}Stock-Yogo weak ID test critical values:{res}{txt}{col 42}10% maximal IV size{res}{col 73} 16.38
{txt}{col 42}15% maximal IV size{res}{col 73}  8.96
{txt}{col 42}20% maximal IV size{res}{col 73}  6.66
{txt}{col 42}25% maximal IV size{res}{col 73}  5.53
{txt}Source: Stock-Yogo (2005).  Reproduced by permission.
NB: Critical values are for Cragg-Donald F statistic and i.i.d. errors.
{hline 78}
{help ivreg2##overidtests:Hansen J statistic} (overidentification test of all instruments):{res}{col 71}   0.000
{txt}{col 50}(equation exactly identified)
{hline 78}
Instrumented:{col 23}d_Grain
Included instruments:{col 23}lnGDP_pc_03
Excluded instruments:{col 23}dsim_Grain
{help ivreg2##partial:Partialled-out}:{col 23}_cons
{col 23}nb: total SS, model F and R2s are after partialling-out;
{col 23}    any {help ivreg2##s_small:small-sample adjustments} include partialled-out
{col 23}    variables in regressor count K
{hline 78}
{res}
{txt}Absorbed degrees of freedom:
{res}{col 1}{text}{hline 13}{c TT}{hline 12}{hline 12}{hline 14}{hline 1}{c TRC}
{col 1}{text} Absorbed FE{col 14}{c |} Categories{col 27} - Redundant{col 39}  = Num. Coefs{col 54}{c |}
{res}{col 1}{text}{hline 13}{c +}{hline 12}{hline 12}{hline 14}{hline 1}{c RT}
{col 1}{text}     city_id{col 14}{c |}{space 1}       18{col 27}{space 1}       18{col 39}{result}{space 1}        0{col 53}{text}*{col 54}{c |}
{res}{col 1}{text}{hline 13}{c BT}{hline 12}{hline 12}{hline 14}{hline 1}{c BRC}
* = FE nested within cluster; treated as redundant for DoF computation
{res}{txt}
{com}.         
.         outreg2 using "$logfiles/table_IV1", ctitle("zxq") addtext(Controls, Y, City FE, Y) append excel nocons nor2 depvar addstat(K-P Wald F, e(rkf)) keep(d_Grain) adec(3) dec(3)
{txt}{browse `"E:\2024-00768_数据\2024-00768+日志文件/table_IV1.xml"'}
{browse `"E:\2024-00768_数据"' :dir}{com} : {txt}{stata `"seeout using "E:\2024-00768_数据\2024-00768+日志文件/table_IV1.txt""':seeout}

{com}.         
.         
.         * (3).平衡区
.         
.         ivreghdfe d_lnGDP_pc lnGDP_pc_03 (d_Grain = dsim_Grain) if year==2016&is_phq==1, absorb(city_id) cluster(city_id)
{res}{txt}(dropped 5 {browse "http://scorreia.com/research/singletons.pdf":singleton observations})
{res}{txt}({browse "http://scorreia.com/research/hdfe.pdf":MWFE estimator} converged in 1 iterations)
{res}
{txt}IV (2SLS) estimation
{hline 20}

Estimates efficient for homoskedasticity only
Statistics robust to heteroskedasticity and clustering on city_id

Number of clusters (city_id) = {col 33}{res}    95{txt}{col 55}Number of obs = {res}     676
{txt}{col 55}F(  2,    94) = {res}   43.91
{txt}{col 55}Prob > F      = {res}  0.0000
{txt}Total (centered) SS     = {res} 59.23146288{txt}{col 55}Centered R2   = {res}  0.2188
{txt}Total (uncentered) SS   = {res} 59.23146288{txt}{col 55}Uncentered R2 = {res}  0.2188
{txt}Residual SS             = {res} 46.27268919{txt}{col 55}Root MSE      = {res}   .2622

{txt}{hline 13}{c TT}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{col 14}{c |}{col 26}    Robust
{col 1}  d_lnGDP_pc{col 14}{c |} Coefficient{col 26}  std. err.{col 38}      t{col 46}   P>|t|{col 54}     [95% con{col 67}f. interval]
{hline 13}{c +}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{space 5}d_Grain {c |}{col 14}{res}{space 2}-.0298051{col 26}{space 2} .0669141{col 37}{space 1}   -0.45{col 46}{space 3}0.657{col 54}{space 4}-.1626645{col 67}{space 3} .1030544
{txt}{space 1}lnGDP_pc_03 {c |}{col 14}{res}{space 2}-.2997192{col 26}{space 2} .0355648{col 37}{space 1}   -8.43{col 46}{space 3}0.000{col 54}{space 4}-.3703339{col 67}{space 3}-.2291044
{txt}{hline 13}{c BT}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{help ivreg2##idtest:Underidentification test} (Kleibergen-Paap rk LM statistic):{res}{col 71}  18.611
{txt}{col 52}Chi-sq({res}1{txt}) P-val =  {res}{col 73}0.0000
{txt}{hline 78}
{help ivreg2##widtest:Weak identification test} (Cragg-Donald Wald F statistic):{res}{col 71}  65.477
{txt}                         (Kleibergen-Paap rk Wald F statistic):{res}{col 71}  21.499
{txt}Stock-Yogo weak ID test critical values:{res}{txt}{col 42}10% maximal IV size{res}{col 73} 16.38
{txt}{col 42}15% maximal IV size{res}{col 73}  8.96
{txt}{col 42}20% maximal IV size{res}{col 73}  6.66
{txt}{col 42}25% maximal IV size{res}{col 73}  5.53
{txt}Source: Stock-Yogo (2005).  Reproduced by permission.
NB: Critical values are for Cragg-Donald F statistic and i.i.d. errors.
{hline 78}
{help ivreg2##overidtests:Hansen J statistic} (overidentification test of all instruments):{res}{col 71}   0.000
{txt}{col 50}(equation exactly identified)
{hline 78}
Instrumented:{col 23}d_Grain
Included instruments:{col 23}lnGDP_pc_03
Excluded instruments:{col 23}dsim_Grain
{help ivreg2##partial:Partialled-out}:{col 23}_cons
{col 23}nb: total SS, model F and R2s are after partialling-out;
{col 23}    any {help ivreg2##s_small:small-sample adjustments} include partialled-out
{col 23}    variables in regressor count K
{hline 78}
{res}
{txt}Absorbed degrees of freedom:
{res}{col 1}{text}{hline 13}{c TT}{hline 12}{hline 12}{hline 14}{hline 1}{c TRC}
{col 1}{text} Absorbed FE{col 14}{c |} Categories{col 27} - Redundant{col 39}  = Num. Coefs{col 54}{c |}
{res}{col 1}{text}{hline 13}{c +}{hline 12}{hline 12}{hline 14}{hline 1}{c RT}
{col 1}{text}     city_id{col 14}{c |}{space 1}       95{col 27}{space 1}       95{col 39}{result}{space 1}        0{col 53}{text}*{col 54}{c |}
{res}{col 1}{text}{hline 13}{c BT}{hline 12}{hline 12}{hline 14}{hline 1}{c BRC}
* = FE nested within cluster; treated as redundant for DoF computation
{res}{txt}
{com}.         
.         outreg2 using "$logfiles/table_IV1", ctitle("phq") addtext(Controls, Y, City FE, Y) append excel nocons nor2 depvar addstat(K-P Wald F, e(rkf)) keep(d_Grain) adec(3) dec(3)
{txt}{browse `"E:\2024-00768_数据\2024-00768+日志文件/table_IV1.xml"'}
{browse `"E:\2024-00768_数据"' :dir}{com} : {txt}{stata `"seeout using "E:\2024-00768_数据\2024-00768+日志文件/table_IV1.txt""':seeout}

{com}.         
.         
.         
.                           ***--- 分地理区域异质性 ---***
.                           
.         * (4).东部
. 
.         ivreghdfe d_lnGDP_pc lnGDP_pc_03 (d_Grain = dsim_Grain) if year==2016&region_east==1, absorb(city_id) cluster(city_id)
{res}{txt}(dropped 4 {browse "http://scorreia.com/research/singletons.pdf":singleton observations})
{res}{txt}({browse "http://scorreia.com/research/hdfe.pdf":MWFE estimator} converged in 1 iterations)
{res}
{txt}IV (2SLS) estimation
{hline 20}

Estimates efficient for homoskedasticity only
Statistics robust to heteroskedasticity and clustering on city_id

Number of clusters (city_id) = {col 33}{res}    55{txt}{col 55}Number of obs = {res}     369
{txt}{col 55}F(  2,    54) = {res}    8.35
{txt}{col 55}Prob > F      = {res}  0.0007
{txt}Total (centered) SS     = {res} 13.88634641{txt}{col 55}Centered R2   = {res} -0.0466
{txt}Total (uncentered) SS   = {res} 13.88634641{txt}{col 55}Uncentered R2 = {res} -0.0466
{txt}Residual SS             = {res} 14.53324837{txt}{col 55}Root MSE      = {res}   .1993

{txt}{hline 13}{c TT}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{col 14}{c |}{col 26}    Robust
{col 1}  d_lnGDP_pc{col 14}{c |} Coefficient{col 26}  std. err.{col 38}      t{col 46}   P>|t|{col 54}     [95% con{col 67}f. interval]
{hline 13}{c +}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{space 5}d_Grain {c |}{col 14}{res}{space 2}-.1038481{col 26}{space 2} .0427022{col 37}{space 1}   -2.43{col 46}{space 3}0.018{col 54}{space 4}-.1894608{col 67}{space 3}-.0182353
{txt}{space 1}lnGDP_pc_03 {c |}{col 14}{res}{space 2}-.1910066{col 26}{space 2} .0499484{col 37}{space 1}   -3.82{col 46}{space 3}0.000{col 54}{space 4}-.2911472{col 67}{space 3} -.090866
{txt}{hline 13}{c BT}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{help ivreg2##idtest:Underidentification test} (Kleibergen-Paap rk LM statistic):{res}{col 71}  11.210
{txt}{col 52}Chi-sq({res}1{txt}) P-val =  {res}{col 73}0.0008
{txt}{hline 78}
{help ivreg2##widtest:Weak identification test} (Cragg-Donald Wald F statistic):{res}{col 71}  54.438
{txt}                         (Kleibergen-Paap rk Wald F statistic):{res}{col 71}  16.004
{txt}Stock-Yogo weak ID test critical values:{res}{txt}{col 42}10% maximal IV size{res}{col 73} 16.38
{txt}{col 42}15% maximal IV size{res}{col 73}  8.96
{txt}{col 42}20% maximal IV size{res}{col 73}  6.66
{txt}{col 42}25% maximal IV size{res}{col 73}  5.53
{txt}Source: Stock-Yogo (2005).  Reproduced by permission.
NB: Critical values are for Cragg-Donald F statistic and i.i.d. errors.
{hline 78}
{help ivreg2##overidtests:Hansen J statistic} (overidentification test of all instruments):{res}{col 71}   0.000
{txt}{col 50}(equation exactly identified)
{hline 78}
Instrumented:{col 23}d_Grain
Included instruments:{col 23}lnGDP_pc_03
Excluded instruments:{col 23}dsim_Grain
{help ivreg2##partial:Partialled-out}:{col 23}_cons
{col 23}nb: total SS, model F and R2s are after partialling-out;
{col 23}    any {help ivreg2##s_small:small-sample adjustments} include partialled-out
{col 23}    variables in regressor count K
{hline 78}
{res}
{txt}Absorbed degrees of freedom:
{res}{col 1}{text}{hline 13}{c TT}{hline 12}{hline 12}{hline 14}{hline 1}{c TRC}
{col 1}{text} Absorbed FE{col 14}{c |} Categories{col 27} - Redundant{col 39}  = Num. Coefs{col 54}{c |}
{res}{col 1}{text}{hline 13}{c +}{hline 12}{hline 12}{hline 14}{hline 1}{c RT}
{col 1}{text}     city_id{col 14}{c |}{space 1}       55{col 27}{space 1}       55{col 39}{result}{space 1}        0{col 53}{text}*{col 54}{c |}
{res}{col 1}{text}{hline 13}{c BT}{hline 12}{hline 12}{hline 14}{hline 1}{c BRC}
* = FE nested within cluster; treated as redundant for DoF computation
{res}{txt}
{com}.         
.         outreg2 using "$logfiles/table_IV1", ctitle("East") addtext(Controls, Y, City FE, Y) append excel nocons nor2 depvar addstat(K-P Wald F, e(rkf)) keep(d_Grain) adec(3) dec(3)
{txt}{browse `"E:\2024-00768_数据\2024-00768+日志文件/table_IV1.xml"'}
{browse `"E:\2024-00768_数据"' :dir}{com} : {txt}{stata `"seeout using "E:\2024-00768_数据\2024-00768+日志文件/table_IV1.txt""':seeout}

{com}.         
.         
.         * (5).中部
.         
.         ivreghdfe d_lnGDP_pc lnGDP_pc_03 (d_Grain = dsim_Grain) if year==2016&region_mid==1, absorb(city_id) cluster(city_id)
{res}{txt}(dropped 1 {browse "http://scorreia.com/research/singletons.pdf":singleton observations})
{res}{txt}({browse "http://scorreia.com/research/hdfe.pdf":MWFE estimator} converged in 1 iterations)
{res}
{txt}IV (2SLS) estimation
{hline 20}

Estimates efficient for homoskedasticity only
Statistics robust to heteroskedasticity and clustering on city_id

Number of clusters (city_id) = {col 33}{res}    69{txt}{col 55}Number of obs = {res}     443
{txt}{col 55}F(  2,    68) = {res}   28.68
{txt}{col 55}Prob > F      = {res}  0.0000
{txt}Total (centered) SS     = {res} 31.90002387{txt}{col 55}Centered R2   = {res}  0.1631
{txt}Total (uncentered) SS   = {res} 31.90002387{txt}{col 55}Uncentered R2 = {res}  0.1631
{txt}Residual SS             = {res} 26.69723019{txt}{col 55}Root MSE      = {res}   .2463

{txt}{hline 13}{c TT}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{col 14}{c |}{col 26}    Robust
{col 1}  d_lnGDP_pc{col 14}{c |} Coefficient{col 26}  std. err.{col 38}      t{col 46}   P>|t|{col 54}     [95% con{col 67}f. interval]
{hline 13}{c +}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{space 5}d_Grain {c |}{col 14}{res}{space 2}  -.06709{col 26}{space 2} .0217938{col 37}{space 1}   -3.08{col 46}{space 3}0.003{col 54}{space 4}-.1105789{col 67}{space 3}-.0236012
{txt}{space 1}lnGDP_pc_03 {c |}{col 14}{res}{space 2}-.3113203{col 26}{space 2} .0419241{col 37}{space 1}   -7.43{col 46}{space 3}0.000{col 54}{space 4}-.3949785{col 67}{space 3}-.2276621
{txt}{hline 13}{c BT}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{help ivreg2##idtest:Underidentification test} (Kleibergen-Paap rk LM statistic):{res}{col 71}  12.229
{txt}{col 52}Chi-sq({res}1{txt}) P-val =  {res}{col 73}0.0005
{txt}{hline 78}
{help ivreg2##widtest:Weak identification test} (Cragg-Donald Wald F statistic):{res}{col 71} 286.429
{txt}                         (Kleibergen-Paap rk Wald F statistic):{res}{col 71}  47.313
{txt}Stock-Yogo weak ID test critical values:{res}{txt}{col 42}10% maximal IV size{res}{col 73} 16.38
{txt}{col 42}15% maximal IV size{res}{col 73}  8.96
{txt}{col 42}20% maximal IV size{res}{col 73}  6.66
{txt}{col 42}25% maximal IV size{res}{col 73}  5.53
{txt}Source: Stock-Yogo (2005).  Reproduced by permission.
NB: Critical values are for Cragg-Donald F statistic and i.i.d. errors.
{hline 78}
{help ivreg2##overidtests:Hansen J statistic} (overidentification test of all instruments):{res}{col 71}   0.000
{txt}{col 50}(equation exactly identified)
{hline 78}
Instrumented:{col 23}d_Grain
Included instruments:{col 23}lnGDP_pc_03
Excluded instruments:{col 23}dsim_Grain
{help ivreg2##partial:Partialled-out}:{col 23}_cons
{col 23}nb: total SS, model F and R2s are after partialling-out;
{col 23}    any {help ivreg2##s_small:small-sample adjustments} include partialled-out
{col 23}    variables in regressor count K
{hline 78}
{res}
{txt}Absorbed degrees of freedom:
{res}{col 1}{text}{hline 13}{c TT}{hline 12}{hline 12}{hline 14}{hline 1}{c TRC}
{col 1}{text} Absorbed FE{col 14}{c |} Categories{col 27} - Redundant{col 39}  = Num. Coefs{col 54}{c |}
{res}{col 1}{text}{hline 13}{c +}{hline 12}{hline 12}{hline 14}{hline 1}{c RT}
{col 1}{text}     city_id{col 14}{c |}{space 1}       69{col 27}{space 1}       69{col 39}{result}{space 1}        0{col 53}{text}*{col 54}{c |}
{res}{col 1}{text}{hline 13}{c BT}{hline 12}{hline 12}{hline 14}{hline 1}{c BRC}
* = FE nested within cluster; treated as redundant for DoF computation
{res}{txt}
{com}.         
.         outreg2 using "$logfiles/table_IV1", ctitle("Middle") addtext(Controls, Y, City FE, Y) append excel nocons nor2 depvar addstat(K-P Wald F, e(rkf)) keep(d_Grain) adec(3) dec(3)
{txt}{browse `"E:\2024-00768_数据\2024-00768+日志文件/table_IV1.xml"'}
{browse `"E:\2024-00768_数据"' :dir}{com} : {txt}{stata `"seeout using "E:\2024-00768_数据\2024-00768+日志文件/table_IV1.txt""':seeout}

{com}.         
.         
.         * (6).西部
.         
.         ivreghdfe d_lnGDP_pc lnGDP_pc_03 (d_Grain = dsim_Grain) if year==2016&region_west==1, absorb(city_id) cluster(city_id)
{res}{txt}(dropped 5 {browse "http://scorreia.com/research/singletons.pdf":singleton observations})
{res}{txt}({browse "http://scorreia.com/research/hdfe.pdf":MWFE estimator} converged in 1 iterations)
{res}
{txt}IV (2SLS) estimation
{hline 20}

Estimates efficient for homoskedasticity only
Statistics robust to heteroskedasticity and clustering on city_id

Number of clusters (city_id) = {col 33}{res}   117{txt}{col 55}Number of obs = {res}     800
{txt}{col 55}F(  2,   116) = {res}   36.03
{txt}{col 55}Prob > F      = {res}  0.0000
{txt}Total (centered) SS     = {res} 62.58513227{txt}{col 55}Centered R2   = {res}  0.1625
{txt}Total (uncentered) SS   = {res} 62.58513227{txt}{col 55}Uncentered R2 = {res}  0.1625
{txt}Residual SS             = {res} 52.41673791{txt}{col 55}Root MSE      = {res}   .2565

{txt}{hline 13}{c TT}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{col 14}{c |}{col 26}    Robust
{col 1}  d_lnGDP_pc{col 14}{c |} Coefficient{col 26}  std. err.{col 38}      t{col 46}   P>|t|{col 54}     [95% con{col 67}f. interval]
{hline 13}{c +}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{space 5}d_Grain {c |}{col 14}{res}{space 2} -.025813{col 26}{space 2} .0317343{col 37}{space 1}   -0.81{col 46}{space 3}0.418{col 54}{space 4}-.0886668{col 67}{space 3} .0370409
{txt}{space 1}lnGDP_pc_03 {c |}{col 14}{res}{space 2}-.2701137{col 26}{space 2} .0358433{col 37}{space 1}   -7.54{col 46}{space 3}0.000{col 54}{space 4}-.3411059{col 67}{space 3}-.1991214
{txt}{hline 13}{c BT}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{help ivreg2##idtest:Underidentification test} (Kleibergen-Paap rk LM statistic):{res}{col 71}   7.465
{txt}{col 52}Chi-sq({res}1{txt}) P-val =  {res}{col 73}0.0063
{txt}{hline 78}
{help ivreg2##widtest:Weak identification test} (Cragg-Donald Wald F statistic):{res}{col 71} 105.866
{txt}                         (Kleibergen-Paap rk Wald F statistic):{res}{col 71}   9.153
{txt}Stock-Yogo weak ID test critical values:{res}{txt}{col 42}10% maximal IV size{res}{col 73} 16.38
{txt}{col 42}15% maximal IV size{res}{col 73}  8.96
{txt}{col 42}20% maximal IV size{res}{col 73}  6.66
{txt}{col 42}25% maximal IV size{res}{col 73}  5.53
{txt}Source: Stock-Yogo (2005).  Reproduced by permission.
NB: Critical values are for Cragg-Donald F statistic and i.i.d. errors.
{hline 78}
{help ivreg2##overidtests:Hansen J statistic} (overidentification test of all instruments):{res}{col 71}   0.000
{txt}{col 50}(equation exactly identified)
{hline 78}
Instrumented:{col 23}d_Grain
Included instruments:{col 23}lnGDP_pc_03
Excluded instruments:{col 23}dsim_Grain
{help ivreg2##partial:Partialled-out}:{col 23}_cons
{col 23}nb: total SS, model F and R2s are after partialling-out;
{col 23}    any {help ivreg2##s_small:small-sample adjustments} include partialled-out
{col 23}    variables in regressor count K
{hline 78}
{res}
{txt}Absorbed degrees of freedom:
{res}{col 1}{text}{hline 13}{c TT}{hline 12}{hline 12}{hline 14}{hline 1}{c TRC}
{col 1}{text} Absorbed FE{col 14}{c |} Categories{col 27} - Redundant{col 39}  = Num. Coefs{col 54}{c |}
{res}{col 1}{text}{hline 13}{c +}{hline 12}{hline 12}{hline 14}{hline 1}{c RT}
{col 1}{text}     city_id{col 14}{c |}{space 1}      117{col 27}{space 1}      117{col 39}{result}{space 1}        0{col 53}{text}*{col 54}{c |}
{res}{col 1}{text}{hline 13}{c BT}{hline 12}{hline 12}{hline 14}{hline 1}{c BRC}
* = FE nested within cluster; treated as redundant for DoF computation
{res}{txt}
{com}.         
.         outreg2 using "$logfiles/table_IV1", ctitle("West") addtext(Controls, Y, City FE, Y) append excel nocons nor2 depvar addstat(K-P Wald F, e(rkf)) keep(d_Grain) adec(3) dec(3)
{txt}{browse `"E:\2024-00768_数据\2024-00768+日志文件/table_IV1.xml"'}
{browse `"E:\2024-00768_数据"' :dir}{com} : {txt}{stata `"seeout using "E:\2024-00768_数据\2024-00768+日志文件/table_IV1.txt""':seeout}

{com}.         
.         
.         * (7) 东北
.         
.         ivreghdfe d_lnGDP_pc lnGDP_pc_03 (d_Grain = dsim_Grain) if year==2016&region_noreast==1, absorb(city_id) cluster(city_id)
{res}{txt}(dropped 1 {browse "http://scorreia.com/research/singletons.pdf":singleton observations})
{res}{txt}({browse "http://scorreia.com/research/hdfe.pdf":MWFE estimator} converged in 1 iterations)
{res}
{txt}IV (2SLS) estimation
{hline 20}

Estimates efficient for homoskedasticity only
Statistics robust to heteroskedasticity and clustering on city_id

Number of clusters (city_id) = {col 33}{res}    47{txt}{col 55}Number of obs = {res}     262
{txt}{col 55}F(  2,    46) = {res}   27.05
{txt}{col 55}Prob > F      = {res}  0.0000
{txt}Total (centered) SS     = {res} 30.82824162{txt}{col 55}Centered R2   = {res}  0.2182
{txt}Total (uncentered) SS   = {res} 30.82824162{txt}{col 55}Uncentered R2 = {res}  0.2182
{txt}Residual SS             = {res} 24.10131009{txt}{col 55}Root MSE      = {res}    .305

{txt}{hline 13}{c TT}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{col 14}{c |}{col 26}    Robust
{col 1}  d_lnGDP_pc{col 14}{c |} Coefficient{col 26}  std. err.{col 38}      t{col 46}   P>|t|{col 54}     [95% con{col 67}f. interval]
{hline 13}{c +}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{space 5}d_Grain {c |}{col 14}{res}{space 2}-.0676134{col 26}{space 2} .0166341{col 37}{space 1}   -4.06{col 46}{space 3}0.000{col 54}{space 4}-.1010962{col 67}{space 3}-.0341306
{txt}{space 1}lnGDP_pc_03 {c |}{col 14}{res}{space 2}-.5107873{col 26}{space 2} .0803829{col 37}{space 1}   -6.35{col 46}{space 3}0.000{col 54}{space 4}-.6725897{col 67}{space 3}-.3489849
{txt}{hline 13}{c BT}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{help ivreg2##idtest:Underidentification test} (Kleibergen-Paap rk LM statistic):{res}{col 71}  11.573
{txt}{col 52}Chi-sq({res}1{txt}) P-val =  {res}{col 73}0.0007
{txt}{hline 78}
{help ivreg2##widtest:Weak identification test} (Cragg-Donald Wald F statistic):{res}{col 71} 104.960
{txt}                         (Kleibergen-Paap rk Wald F statistic):{res}{col 71}  21.355
{txt}Stock-Yogo weak ID test critical values:{res}{txt}{col 42}10% maximal IV size{res}{col 73} 16.38
{txt}{col 42}15% maximal IV size{res}{col 73}  8.96
{txt}{col 42}20% maximal IV size{res}{col 73}  6.66
{txt}{col 42}25% maximal IV size{res}{col 73}  5.53
{txt}Source: Stock-Yogo (2005).  Reproduced by permission.
NB: Critical values are for Cragg-Donald F statistic and i.i.d. errors.
{hline 78}
{help ivreg2##overidtests:Hansen J statistic} (overidentification test of all instruments):{res}{col 71}   0.000
{txt}{col 50}(equation exactly identified)
{hline 78}
Instrumented:{col 23}d_Grain
Included instruments:{col 23}lnGDP_pc_03
Excluded instruments:{col 23}dsim_Grain
{help ivreg2##partial:Partialled-out}:{col 23}_cons
{col 23}nb: total SS, model F and R2s are after partialling-out;
{col 23}    any {help ivreg2##s_small:small-sample adjustments} include partialled-out
{col 23}    variables in regressor count K
{hline 78}
{res}
{txt}Absorbed degrees of freedom:
{res}{col 1}{text}{hline 13}{c TT}{hline 12}{hline 12}{hline 14}{hline 1}{c TRC}
{col 1}{text} Absorbed FE{col 14}{c |} Categories{col 27} - Redundant{col 39}  = Num. Coefs{col 54}{c |}
{res}{col 1}{text}{hline 13}{c +}{hline 12}{hline 12}{hline 14}{hline 1}{c RT}
{col 1}{text}     city_id{col 14}{c |}{space 1}       47{col 27}{space 1}       47{col 39}{result}{space 1}        0{col 53}{text}*{col 54}{c |}
{res}{col 1}{text}{hline 13}{c BT}{hline 12}{hline 12}{hline 14}{hline 1}{c BRC}
* = FE nested within cluster; treated as redundant for DoF computation
{res}{txt}
{com}.         
.         outreg2 using "$logfiles/table_IV1", ctitle("Northeast") addtext(Controls, Y, City FE, Y) append excel nocons nor2 depvar addstat(K-P Wald F, e(rkf)) keep(d_Grain) adec(3) dec(3)
{txt}{browse `"E:\2024-00768_数据\2024-00768+日志文件/table_IV1.xml"'}
{browse `"E:\2024-00768_数据"' :dir}{com} : {txt}{stata `"seeout using "E:\2024-00768_数据\2024-00768+日志文件/table_IV1.txt""':seeout}

{com}.                 
. 
. 
. 
.         
. ********************************************************************************
. ******************** 表V1、图V1 .粮食增产与县域经济发展：稳健性检验I ***********
. ********************************************************************************
. 
.         use $working_data\county_panel.dta ,clear
{txt}
{com}. 
.         
.         
.                                                 ***--- 变量处理 ---***      
.         
.         * 生成匹配变量的基期(2003)值
.         gen is_yr2003 = 1 if year==2003
{txt}(58,333 missing values generated)

{com}. 
.         foreach v of varlist Grain lnGDP_pc lnRainfall lnTempr Share_PriGDP Share_SecGDP Farmland_share{c -(}
{txt}  2{com}.                 
.                 bysort county_id (year): egen `v'_03 = mean(`v'*is_yr2003)
{txt}  3{com}.                 
.         {c )-}
{txt}(8,523 missing values generated)
(11,649 missing values generated)
(993 missing values generated)
(1,246 missing values generated)
(10,269 missing values generated)
(9,970 missing values generated)
(1,005 missing values generated)

{com}.         
.         foreach v of varlist Grain lnGDP_pc{c -(}
{txt}  2{com}.                 
.                 gen d_`v' = `v' - `v'_03
{txt}  3{com}.                 
.         {c )-}
{txt}(13,008 missing values generated)
(16,346 missing values generated)

{com}. 
. 
.                                                 ***--- 回归结果 ---***      
.                 
.         
.         * (1). 年份平均作为基期末期
.         
.         //基期: 2001-2003
.         gen is_yr0103 = 1 if year>=2001&year<=2003
{txt}(52,525 missing values generated)

{com}.         bysort county_id (year): egen Grain_a0103 = mean(Grain*is_yr0103)
{txt}(8,431 missing values generated)

{com}.         bysort county_id (year): egen lnGDP_pc_a0103 = mean(lnGDP_pc*is_yr0103)
{txt}(11,281 missing values generated)

{com}.         bysort county_id (year): egen sim_Grain_a0103 = mean(sim_Grain*is_yr0103)
{txt}(1,872 missing values generated)

{com}.         
.         
.         //末期: 2014-2016
.         gen is_yr1416 = 1 if year>=2014&year<=2016
{txt}(53,602 missing values generated)

{com}.         bysort county_id (year): egen Grain_a1416 = mean(Grain*is_yr1416)
{txt}(7,304 missing values generated)

{com}.         bysort county_id (year): egen lnGDP_pc_a1416 = mean(lnGDP_pc*is_yr1416)
{txt}(7,166 missing values generated)

{com}.         bysort county_id (year): egen sim_Grain_a1416 = mean(sim_Grain*is_yr1416)
{txt}(3,714 missing values generated)

{com}.         
.         
.         //年份平均间的差分
.         gen d_Grain_avg = (Grain_a1416 - Grain_a0103)
{txt}(8,822 missing values generated)

{com}.         gen d_lnGDP_pc_avg = lnGDP_pc_a1416 - lnGDP_pc_a0103
{txt}(11,327 missing values generated)

{com}.         gen dsim_Grain_avg = sim_Grain_a1416 - sim_Grain_a0103
{txt}(3,714 missing values generated)

{com}.         
.         
.         //重新估计
.         ivreghdfe d_lnGDP_pc_avg lnGDP_pc_a0103 (d_Grain_avg = dsim_Grain_avg) if year==2016, absorb(city_id) cluster(city_id)
{res}{txt}(dropped 11 {browse "http://scorreia.com/research/singletons.pdf":singleton observations})
{res}{txt}({browse "http://scorreia.com/research/hdfe.pdf":MWFE estimator} converged in 1 iterations)
{res}
{txt}IV (2SLS) estimation
{hline 20}

Estimates efficient for homoskedasticity only
Statistics robust to heteroskedasticity and clustering on city_id

Number of clusters (city_id) = {col 33}{res}   312{txt}{col 55}Number of obs = {res}    2030
{txt}{col 55}F(  2,   311) = {res}   55.27
{txt}{col 55}Prob > F      = {res}  0.0000
{txt}Total (centered) SS     = {res} 142.7317215{txt}{col 55}Centered R2   = {res}  0.0816
{txt}Total (uncentered) SS   = {res} 142.7317215{txt}{col 55}Uncentered R2 = {res}  0.0816
{txt}Residual SS             = {res} 131.0854061{txt}{col 55}Root MSE      = {res}   .2543

{txt}{hline 15}{c TT}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{col 16}{c |}{col 28}    Robust
{col 1}d_lnGDP_pc_avg{col 16}{c |} Coefficient{col 28}  std. err.{col 40}      t{col 48}   P>|t|{col 56}     [95% con{col 69}f. interval]
{hline 15}{c +}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{space 3}d_Grain_avg {c |}{col 16}{res}{space 2} -.057954{col 28}{space 2} .0135101{col 39}{space 1}   -4.29{col 48}{space 3}0.000{col 56}{space 4}-.0845367{col 69}{space 3}-.0313713
{txt}lnGDP_pc_a0103 {c |}{col 16}{res}{space 2}-.2374293{col 28}{space 2} .0231535{col 39}{space 1}  -10.25{col 48}{space 3}0.000{col 56}{space 4}-.2829867{col 69}{space 3}-.1918719
{txt}{hline 15}{c BT}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{help ivreg2##idtest:Underidentification test} (Kleibergen-Paap rk LM statistic):{res}{col 71}  36.169
{txt}{col 52}Chi-sq({res}1{txt}) P-val =  {res}{col 73}0.0000
{txt}{hline 78}
{help ivreg2##widtest:Weak identification test} (Cragg-Donald Wald F statistic):{res}{col 71} 696.961
{txt}                         (Kleibergen-Paap rk Wald F statistic):{res}{col 71}  79.190
{txt}Stock-Yogo weak ID test critical values:{res}{txt}{col 42}10% maximal IV size{res}{col 73} 16.38
{txt}{col 42}15% maximal IV size{res}{col 73}  8.96
{txt}{col 42}20% maximal IV size{res}{col 73}  6.66
{txt}{col 42}25% maximal IV size{res}{col 73}  5.53
{txt}Source: Stock-Yogo (2005).  Reproduced by permission.
NB: Critical values are for Cragg-Donald F statistic and i.i.d. errors.
{hline 78}
{help ivreg2##overidtests:Hansen J statistic} (overidentification test of all instruments):{res}{col 71}   0.000
{txt}{col 50}(equation exactly identified)
{hline 78}
Instrumented:{col 23}d_Grain_avg
Included instruments:{col 23}lnGDP_pc_a0103
Excluded instruments:{col 23}dsim_Grain_avg
{help ivreg2##partial:Partialled-out}:{col 23}_cons
{col 23}nb: total SS, model F and R2s are after partialling-out;
{col 23}    any {help ivreg2##s_small:small-sample adjustments} include partialled-out
{col 23}    variables in regressor count K
{hline 78}
{res}
{txt}Absorbed degrees of freedom:
{res}{col 1}{text}{hline 13}{c TT}{hline 12}{hline 12}{hline 14}{hline 1}{c TRC}
{col 1}{text} Absorbed FE{col 14}{c |} Categories{col 27} - Redundant{col 39}  = Num. Coefs{col 54}{c |}
{res}{col 1}{text}{hline 13}{c +}{hline 12}{hline 12}{hline 14}{hline 1}{c RT}
{col 1}{text}     city_id{col 14}{c |}{space 1}      312{col 27}{space 1}      312{col 39}{result}{space 1}        0{col 53}{text}*{col 54}{c |}
{res}{col 1}{text}{hline 13}{c BT}{hline 12}{hline 12}{hline 14}{hline 1}{c BRC}
* = FE nested within cluster; treated as redundant for DoF computation
{res}{txt}
{com}.         outreg2 using "$logfiles/table_V1", ctitle("average base") keep(d_Grain_avg) replace excel nocons nor2 depvar addstat(K-P Wald F stat, e(rkf)) dec(3) adec(3) addtext(LagGDP, N, Controls, Y, County FE, N, City FE, Y, City-Year FE, N) 
{txt}{browse `"E:\2024-00768_数据\2024-00768+日志文件/table_V1.xml"'}
{browse `"E:\2024-00768_数据"' :dir}{com} : {txt}{stata `"seeout using "E:\2024-00768_数据\2024-00768+日志文件/table_V1.txt""':seeout}

{com}.         
.                 
.         
.         * (2). 安慰剂
.         // 生成结果变量的改革前变化(1998-2002)
.         gen is_yr1998 = 1 if year==1998
{txt}(58,060 missing values generated)

{com}.         gen is_yr2002 = 1 if year==2002
{txt}(58,333 missing values generated)

{com}.         
.         bysort county_id (year): egen lnGDP_pc_98 = mean(lnGDP_pc*is_yr1998)
{txt}(20,889 missing values generated)

{com}.         bysort county_id (year): egen lnGDP_pc_02 = mean(lnGDP_pc*is_yr2002)
{txt}(11,764 missing values generated)

{com}.         
.         gen d_lnGDP_pc_9802 = lnGDP_pc_02 - lnGDP_pc_98
{txt}(21,677 missing values generated)

{com}.         
.         ivreghdfe d_lnGDP_pc_9802 lnGDP_pc_03 (d_Grain = dsim_Grain) if year==2016, absorb(city_id) cluster(city_id)
{res}{txt}(dropped 18 {browse "http://scorreia.com/research/singletons.pdf":singleton observations})
{res}{txt}({browse "http://scorreia.com/research/hdfe.pdf":MWFE estimator} converged in 1 iterations)
{res}
{txt}IV (2SLS) estimation
{hline 20}

Estimates efficient for homoskedasticity only
Statistics robust to heteroskedasticity and clustering on city_id

Number of clusters (city_id) = {col 33}{res}   286{txt}{col 55}Number of obs = {res}    1630
{txt}{col 55}F(  2,   285) = {res}   27.15
{txt}{col 55}Prob > F      = {res}  0.0000
{txt}Total (centered) SS     = {res} 62.18323572{txt}{col 55}Centered R2   = {res}  0.0883
{txt}Total (uncentered) SS   = {res} 62.18323572{txt}{col 55}Uncentered R2 = {res}  0.0883
{txt}Residual SS             = {res} 56.69010537{txt}{col 55}Root MSE      = {res}   .1867

{txt}{hline 13}{c TT}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{col 14}{c |}{col 26}    Robust
{col 1}d_lnGDP~9802{col 14}{c |} Coefficient{col 26}  std. err.{col 38}      t{col 46}   P>|t|{col 54}     [95% con{col 67}f. interval]
{hline 13}{c +}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{space 5}d_Grain {c |}{col 14}{res}{space 2} .0165796{col 26}{space 2} .0103214{col 37}{space 1}    1.61{col 46}{space 3}0.109{col 54}{space 4}-.0037362{col 67}{space 3} .0368954
{txt}{space 1}lnGDP_pc_03 {c |}{col 14}{res}{space 2} .1734028{col 26}{space 2} .0242252{col 37}{space 1}    7.16{col 46}{space 3}0.000{col 54}{space 4} .1257199{col 67}{space 3} .2210857
{txt}{hline 13}{c BT}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{help ivreg2##idtest:Underidentification test} (Kleibergen-Paap rk LM statistic):{res}{col 71}  30.534
{txt}{col 52}Chi-sq({res}1{txt}) P-val =  {res}{col 73}0.0000
{txt}{hline 78}
{help ivreg2##widtest:Weak identification test} (Cragg-Donald Wald F statistic):{res}{col 71} 538.950
{txt}                         (Kleibergen-Paap rk Wald F statistic):{res}{col 71}  64.134
{txt}Stock-Yogo weak ID test critical values:{res}{txt}{col 42}10% maximal IV size{res}{col 73} 16.38
{txt}{col 42}15% maximal IV size{res}{col 73}  8.96
{txt}{col 42}20% maximal IV size{res}{col 73}  6.66
{txt}{col 42}25% maximal IV size{res}{col 73}  5.53
{txt}Source: Stock-Yogo (2005).  Reproduced by permission.
NB: Critical values are for Cragg-Donald F statistic and i.i.d. errors.
{hline 78}
{help ivreg2##overidtests:Hansen J statistic} (overidentification test of all instruments):{res}{col 71}   0.000
{txt}{col 50}(equation exactly identified)
{hline 78}
Instrumented:{col 23}d_Grain
Included instruments:{col 23}lnGDP_pc_03
Excluded instruments:{col 23}dsim_Grain
{help ivreg2##partial:Partialled-out}:{col 23}_cons
{col 23}nb: total SS, model F and R2s are after partialling-out;
{col 23}    any {help ivreg2##s_small:small-sample adjustments} include partialled-out
{col 23}    variables in regressor count K
{hline 78}
{res}
{txt}Absorbed degrees of freedom:
{res}{col 1}{text}{hline 13}{c TT}{hline 12}{hline 12}{hline 14}{hline 1}{c TRC}
{col 1}{text} Absorbed FE{col 14}{c |} Categories{col 27} - Redundant{col 39}  = Num. Coefs{col 54}{c |}
{res}{col 1}{text}{hline 13}{c +}{hline 12}{hline 12}{hline 14}{hline 1}{c RT}
{col 1}{text}     city_id{col 14}{c |}{space 1}      286{col 27}{space 1}      286{col 39}{result}{space 1}        0{col 53}{text}*{col 54}{c |}
{res}{col 1}{text}{hline 13}{c BT}{hline 12}{hline 12}{hline 14}{hline 1}{c BRC}
* = FE nested within cluster; treated as redundant for DoF computation
{res}{txt}
{com}.         
.         outreg2 using "$logfiles/table_V1", ctitle("placebo") keep(d_Grain) append excel nocons nor2 depvar addstat(K-P Wald F stat, e(rkf)) dec(3) adec(3) addtext(LagGDP, N, Controls, Y, County FE, N, City FE, Y, City-Year FE, N) 
{txt}{browse `"E:\2024-00768_数据\2024-00768+日志文件/table_V1.xml"'}
{browse `"E:\2024-00768_数据"' :dir}{com} : {txt}{stata `"seeout using "E:\2024-00768_数据\2024-00768+日志文件/table_V1.txt""':seeout}

{com}.         
.         
.         
.         * (3). 控制趋势滞后项
. 
.         ivreghdfe d_lnGDP_pc lnGDP_pc_03 d_lnGDP_pc_9802 (d_Grain = dsim_Grain) if year==2016, absorb(city_id) cluster(city_id)
{res}{txt}(dropped 17 {browse "http://scorreia.com/research/singletons.pdf":singleton observations})
{res}{txt}({browse "http://scorreia.com/research/hdfe.pdf":MWFE estimator} converged in 1 iterations)
{res}
{txt}IV (2SLS) estimation
{hline 20}

Estimates efficient for homoskedasticity only
Statistics robust to heteroskedasticity and clustering on city_id

Number of clusters (city_id) = {col 33}{res}   252{txt}{col 55}Number of obs = {res}    1427
{txt}{col 55}F(  3,   251) = {res}   32.13
{txt}{col 55}Prob > F      = {res}  0.0000
{txt}Total (centered) SS     = {res} 85.49930138{txt}{col 55}Centered R2   = {res}  0.1328
{txt}Total (uncentered) SS   = {res} 85.49930138{txt}{col 55}Uncentered R2 = {res}  0.1328
{txt}Residual SS             = {res} 74.14644149{txt}{col 55}Root MSE      = {res}   .2283

{txt}{hline 16}{c TT}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{col 17}{c |}{col 29}    Robust
{col 1}     d_lnGDP_pc{col 17}{c |} Coefficient{col 29}  std. err.{col 41}      t{col 49}   P>|t|{col 57}     [95% con{col 70}f. interval]
{hline 16}{c +}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{space 8}d_Grain {c |}{col 17}{res}{space 2}-.0394355{col 29}{space 2} .0126509{col 40}{space 1}   -3.12{col 49}{space 3}0.002{col 57}{space 4} -.064351{col 70}{space 3}-.0145201
{txt}{space 4}lnGDP_pc_03 {c |}{col 17}{res}{space 2}-.2417742{col 29}{space 2} .0290106{col 40}{space 1}   -8.33{col 49}{space 3}0.000{col 57}{space 4}-.2989094{col 70}{space 3}-.1846391
{txt}d_lnGDP_pc_9802 {c |}{col 17}{res}{space 2}-.1273318{col 29}{space 2} .0605658{col 40}{space 1}   -2.10{col 49}{space 3}0.037{col 57}{space 4}-.2466138{col 70}{space 3}-.0080498
{txt}{hline 16}{c BT}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{help ivreg2##idtest:Underidentification test} (Kleibergen-Paap rk LM statistic):{res}{col 71}  27.561
{txt}{col 52}Chi-sq({res}1{txt}) P-val =  {res}{col 73}0.0000
{txt}{hline 78}
{help ivreg2##widtest:Weak identification test} (Cragg-Donald Wald F statistic):{res}{col 71} 451.906
{txt}                         (Kleibergen-Paap rk Wald F statistic):{res}{col 71}  56.974
{txt}Stock-Yogo weak ID test critical values:{res}{txt}{col 42}10% maximal IV size{res}{col 73} 16.38
{txt}{col 42}15% maximal IV size{res}{col 73}  8.96
{txt}{col 42}20% maximal IV size{res}{col 73}  6.66
{txt}{col 42}25% maximal IV size{res}{col 73}  5.53
{txt}Source: Stock-Yogo (2005).  Reproduced by permission.
NB: Critical values are for Cragg-Donald F statistic and i.i.d. errors.
{hline 78}
{help ivreg2##overidtests:Hansen J statistic} (overidentification test of all instruments):{res}{col 71}   0.000
{txt}{col 50}(equation exactly identified)
{hline 78}
Instrumented:{col 23}d_Grain
Included instruments:{col 23}lnGDP_pc_03 d_lnGDP_pc_9802
Excluded instruments:{col 23}dsim_Grain
{help ivreg2##partial:Partialled-out}:{col 23}_cons
{col 23}nb: total SS, model F and R2s are after partialling-out;
{col 23}    any {help ivreg2##s_small:small-sample adjustments} include partialled-out
{col 23}    variables in regressor count K
{hline 78}
{res}
{txt}Absorbed degrees of freedom:
{res}{col 1}{text}{hline 13}{c TT}{hline 12}{hline 12}{hline 14}{hline 1}{c TRC}
{col 1}{text} Absorbed FE{col 14}{c |} Categories{col 27} - Redundant{col 39}  = Num. Coefs{col 54}{c |}
{res}{col 1}{text}{hline 13}{c +}{hline 12}{hline 12}{hline 14}{hline 1}{c RT}
{col 1}{text}     city_id{col 14}{c |}{space 1}      252{col 27}{space 1}      252{col 39}{result}{space 1}        0{col 53}{text}*{col 54}{c |}
{res}{col 1}{text}{hline 13}{c BT}{hline 12}{hline 12}{hline 14}{hline 1}{c BRC}
* = FE nested within cluster; treated as redundant for DoF computation
{res}{txt}
{com}.         
.         outreg2 using "$logfiles/table_V1", ctitle("pretrends") keep(d_Grain) append excel nocons nor2 depvar addstat(K-P Wald F stat, e(rkf)) dec(3) adec(3) addtext(LagGDP, Y, Controls, Y, County FE, N, City FE, Y, City-Year FE, N) 
{txt}{browse `"E:\2024-00768_数据\2024-00768+日志文件/table_V1.xml"'}
{browse `"E:\2024-00768_数据"' :dir}{com} : {txt}{stata `"seeout using "E:\2024-00768_数据\2024-00768+日志文件/table_V1.txt""':seeout}

{com}.         
.         
.         
.         * (4). 基准回归(保持样本相同)
. 
.         ivreghdfe d_lnGDP_pc lnGDP_pc_03 (d_Grain = dsim_Grain) if e(sample)==1, absorb(city_id) cluster(city_id)
{res}{txt}({browse "http://scorreia.com/research/hdfe.pdf":MWFE estimator} converged in 1 iterations)
{res}
{txt}IV (2SLS) estimation
{hline 20}

Estimates efficient for homoskedasticity only
Statistics robust to heteroskedasticity and clustering on city_id

Number of clusters (city_id) = {col 33}{res}   252{txt}{col 55}Number of obs = {res}    1427
{txt}{col 55}F(  2,   251) = {res}   45.55
{txt}{col 55}Prob > F      = {res}  0.0000
{txt}Total (centered) SS     = {res} 85.49930138{txt}{col 55}Centered R2   = {res}  0.1221
{txt}Total (uncentered) SS   = {res} 85.49930138{txt}{col 55}Uncentered R2 = {res}  0.1221
{txt}Residual SS             = {res} 75.06010531{txt}{col 55}Root MSE      = {res}   .2296

{txt}{hline 13}{c TT}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{col 14}{c |}{col 26}    Robust
{col 1}  d_lnGDP_pc{col 14}{c |} Coefficient{col 26}  std. err.{col 38}      t{col 46}   P>|t|{col 54}     [95% con{col 67}f. interval]
{hline 13}{c +}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{space 5}d_Grain {c |}{col 14}{res}{space 2}-.0414298{col 26}{space 2} .0125877{col 37}{space 1}   -3.29{col 46}{space 3}0.001{col 54}{space 4}-.0662208{col 67}{space 3}-.0166389
{txt}{space 1}lnGDP_pc_03 {c |}{col 14}{res}{space 2}-.2634423{col 26}{space 2} .0284549{col 37}{space 1}   -9.26{col 46}{space 3}0.000{col 54}{space 4} -.319483{col 67}{space 3}-.2074015
{txt}{hline 13}{c BT}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{help ivreg2##idtest:Underidentification test} (Kleibergen-Paap rk LM statistic):{res}{col 71}  27.499
{txt}{col 52}Chi-sq({res}1{txt}) P-val =  {res}{col 73}0.0000
{txt}{hline 78}
{help ivreg2##widtest:Weak identification test} (Cragg-Donald Wald F statistic):{res}{col 71} 452.644
{txt}                         (Kleibergen-Paap rk Wald F statistic):{res}{col 71}  57.067
{txt}Stock-Yogo weak ID test critical values:{res}{txt}{col 42}10% maximal IV size{res}{col 73} 16.38
{txt}{col 42}15% maximal IV size{res}{col 73}  8.96
{txt}{col 42}20% maximal IV size{res}{col 73}  6.66
{txt}{col 42}25% maximal IV size{res}{col 73}  5.53
{txt}Source: Stock-Yogo (2005).  Reproduced by permission.
NB: Critical values are for Cragg-Donald F statistic and i.i.d. errors.
{hline 78}
{help ivreg2##overidtests:Hansen J statistic} (overidentification test of all instruments):{res}{col 71}   0.000
{txt}{col 50}(equation exactly identified)
{hline 78}
Instrumented:{col 23}d_Grain
Included instruments:{col 23}lnGDP_pc_03
Excluded instruments:{col 23}dsim_Grain
{help ivreg2##partial:Partialled-out}:{col 23}_cons
{col 23}nb: total SS, model F and R2s are after partialling-out;
{col 23}    any {help ivreg2##s_small:small-sample adjustments} include partialled-out
{col 23}    variables in regressor count K
{hline 78}
{res}
{txt}Absorbed degrees of freedom:
{res}{col 1}{text}{hline 13}{c TT}{hline 12}{hline 12}{hline 14}{hline 1}{c TRC}
{col 1}{text} Absorbed FE{col 14}{c |} Categories{col 27} - Redundant{col 39}  = Num. Coefs{col 54}{c |}
{res}{col 1}{text}{hline 13}{c +}{hline 12}{hline 12}{hline 14}{hline 1}{c RT}
{col 1}{text}     city_id{col 14}{c |}{space 1}      252{col 27}{space 1}      252{col 39}{result}{space 1}        0{col 53}{text}*{col 54}{c |}
{res}{col 1}{text}{hline 13}{c BT}{hline 12}{hline 12}{hline 14}{hline 1}{c BRC}
* = FE nested within cluster; treated as redundant for DoF computation
{res}{txt}
{com}.         
.         outreg2 using "$logfiles/table_V1", ctitle("baseline") keep(d_Grain) append excel nocons nor2 depvar addstat(K-P Wald F stat, e(rkf)) dec(3) adec(3) addtext(LagGDP, N, Controls, Y, County FE, N, City FE, Y, City-Year FE, N) 
{txt}{browse `"E:\2024-00768_数据\2024-00768+日志文件/table_V1.xml"'}
{browse `"E:\2024-00768_数据"' :dir}{com} : {txt}{stata `"seeout using "E:\2024-00768_数据\2024-00768+日志文件/table_V1.txt""':seeout}

{com}.         
.         
.         
.         
.         * (5). 倾向得分匹配
.         * 按增产中位数分组
.         egen grp_d_Grain = xtile(d_Grain) if year==2016, nquantiles(2) 
{txt}(58,966 missing values generated)

{com}.         gen is_yr2016 = 1 if year==2016
{txt}(58,692 missing values generated)

{com}.         bysort county_id: egen high_d_Grain = mean(grp_d_Grain*is_yr2016)
{txt}(9,006 missing values generated)

{com}.         replace high_d_Grain = high_d_Grain - 1
{txt}(52,231 real changes made)

{com}.         
.         * 匹配
.         ivreghdfe d_lnGDP_pc lnGDP_pc_03 (d_Grain = dsim_Grain) if year==2016, absorb(city_id) vce(cluster city_id)
{res}{txt}(dropped 11 {browse "http://scorreia.com/research/singletons.pdf":singleton observations})
{res}{txt}({browse "http://scorreia.com/research/hdfe.pdf":MWFE estimator} converged in 1 iterations)
{res}
{txt}IV (2SLS) estimation
{hline 20}

Estimates efficient for homoskedasticity only
Statistics robust to heteroskedasticity and clustering on city_id

Number of clusters (city_id) = {col 33}{res}   276{txt}{col 55}Number of obs = {res}    1789
{txt}{col 55}F(  2,   275) = {res}   81.69
{txt}{col 55}Prob > F      = {res}  0.0000
{txt}Total (centered) SS     = {res} 129.3586903{txt}{col 55}Centered R2   = {res}  0.1589
{txt}Total (uncentered) SS   = {res} 129.3586903{txt}{col 55}Uncentered R2 = {res}  0.1589
{txt}Residual SS             = {res} 108.8029909{txt}{col 55}Root MSE      = {res}   .2468

{txt}{hline 13}{c TT}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{col 14}{c |}{col 26}    Robust
{col 1}  d_lnGDP_pc{col 14}{c |} Coefficient{col 26}  std. err.{col 38}      t{col 46}   P>|t|{col 54}     [95% con{col 67}f. interval]
{hline 13}{c +}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{space 5}d_Grain {c |}{col 14}{res}{space 2}-.0591131{col 26}{space 2}  .012991{col 37}{space 1}   -4.55{col 46}{space 3}0.000{col 54}{space 4}-.0846876{col 67}{space 3}-.0335386
{txt}{space 1}lnGDP_pc_03 {c |}{col 14}{res}{space 2}-.3047582{col 26}{space 2} .0243734{col 37}{space 1}  -12.50{col 46}{space 3}0.000{col 54}{space 4}-.3527404{col 67}{space 3} -.256776
{txt}{hline 13}{c BT}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{help ivreg2##idtest:Underidentification test} (Kleibergen-Paap rk LM statistic):{res}{col 71}  31.800
{txt}{col 52}Chi-sq({res}1{txt}) P-val =  {res}{col 73}0.0000
{txt}{hline 78}
{help ivreg2##widtest:Weak identification test} (Cragg-Donald Wald F statistic):{res}{col 71} 566.057
{txt}                         (Kleibergen-Paap rk Wald F statistic):{res}{col 71}  62.566
{txt}Stock-Yogo weak ID test critical values:{res}{txt}{col 42}10% maximal IV size{res}{col 73} 16.38
{txt}{col 42}15% maximal IV size{res}{col 73}  8.96
{txt}{col 42}20% maximal IV size{res}{col 73}  6.66
{txt}{col 42}25% maximal IV size{res}{col 73}  5.53
{txt}Source: Stock-Yogo (2005).  Reproduced by permission.
NB: Critical values are for Cragg-Donald F statistic and i.i.d. errors.
{hline 78}
{help ivreg2##overidtests:Hansen J statistic} (overidentification test of all instruments):{res}{col 71}   0.000
{txt}{col 50}(equation exactly identified)
{hline 78}
Instrumented:{col 23}d_Grain
Included instruments:{col 23}lnGDP_pc_03
Excluded instruments:{col 23}dsim_Grain
{help ivreg2##partial:Partialled-out}:{col 23}_cons
{col 23}nb: total SS, model F and R2s are after partialling-out;
{col 23}    any {help ivreg2##s_small:small-sample adjustments} include partialled-out
{col 23}    variables in regressor count K
{hline 78}
{res}
{txt}Absorbed degrees of freedom:
{res}{col 1}{text}{hline 13}{c TT}{hline 12}{hline 12}{hline 14}{hline 1}{c TRC}
{col 1}{text} Absorbed FE{col 14}{c |} Categories{col 27} - Redundant{col 39}  = Num. Coefs{col 54}{c |}
{res}{col 1}{text}{hline 13}{c +}{hline 12}{hline 12}{hline 14}{hline 1}{c RT}
{col 1}{text}     city_id{col 14}{c |}{space 1}      276{col 27}{space 1}      276{col 39}{result}{space 1}        0{col 53}{text}*{col 54}{c |}
{res}{col 1}{text}{hline 13}{c BT}{hline 12}{hline 12}{hline 14}{hline 1}{c BRC}
* = FE nested within cluster; treated as redundant for DoF computation
{res}{txt}
{com}.         
.         capture drop matchv
{txt}
{com}.         teffects psmatch (d_lnGDP_pc) (high_d_Grain lnGDP_pc_03 lnRainfall_03 lnTempr_03 Share_PriGDP_03 Share_SecGDP_03 Farmland_share_03 Grain_03 Slope) if e(sample)==1,vce(robust) pstolerance(1e-6) generate(matchv)
{res}
{txt}Treatment-effects estimation{col 48}Number of obs {col 67}= {res}     1,775
{txt:Estimator}{col 16}:{res: propensity-score matching}{col 48}{txt:Matches: requested }{col 67}{txt:=}          1
{txt:Outcome model}{col 16}:{res: matching}{txt}{col 63}min {col 67}= {res}         1
{txt:Treatment model}{col 16}:{res: logit}{col 63}{txt:max }{col 67}{txt:=}          1
{txt}{hline 13}{c TT}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{col 14}{c |}{col 26}   AI robust
{col 1}  d_lnGDP_pc{col 14}{c |} Coefficient{col 26}  std. err.{col 38}      z{col 46}   P>|z|{col 54}     [95% con{col 67}f. interval]
{hline 13}{c +}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{res}ATE          {txt}{c |}
high_d_Grain {c |}
{space 3}(1 vs 0)  {c |}{col 14}{res}{space 2}-.0953533{col 26}{space 2} .0246081{col 37}{space 1}   -3.87{col 46}{space 3}0.000{col 54}{space 4}-.1435842{col 67}{space 3}-.0471223
{txt}{hline 13}{c BT}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}

{com}.         
.         * 平衡性检验(生成图#)
.         tebalance summarize
{res}
{txt}{p 0 0 2}Covariate balance summary{p_end}

{res}{col 16}{text}          Raw{col 29}      Matched
{res}{col 1}{text}{hline 15}{hline 13}{hline 13}
{col 1}{text}Number of obs ={col 16}{result}{space 3}     1,775{col 29}{space 3}     3,550
{col 1}{text}Treated obs   ={col 16}{result}{space 3}       970{col 29}{space 3}     1,775
{col 1}{text}Control obs   ={col 16}{result}{space 3}       805{col 29}{space 3}     1,775
{col 1}{text}{hline 15}{hline 13}{hline 13}

{res}{col 1}{text}{hline 16}{c TT}{hline 24}{hline 24}
{col 17}{text}{c |}Standardized differences{col 42}          Variance ratio
{res}{col 17}{text}{c |}        Raw{col 30}    Matched{col 42}          Raw{col 54}    Matched
{res}{col 1}{text}{hline 16}{c +}{hline 12}{hline 12}{hline 12}{hline 12}
{col 1}{text}    lnGDP_pc_03{col 17}{c |}{result}{space 2}-.1460113{col 30}{space 2}-.0094354{col 42}{space 4} .6731462{col 54}{space 2}  .802652
{col 1}{text}  lnRainfall_03{col 17}{c |}{result}{space 2}-.2388833{col 30}{space 2} .0131875{col 42}{space 4} 1.141508{col 54}{space 2} .6378493
{col 1}{text}     lnTempr_03{col 17}{c |}{result}{space 2}-.2844632{col 30}{space 2}-.0574109{col 42}{space 4} 1.070166{col 54}{space 2}  1.04782
{col 1}{text}Share_PriGDP_03{col 17}{c |}{result}{space 2} .2378719{col 30}{space 2} .0322308{col 42}{space 4} .7544887{col 54}{space 2}  .816728
{col 1}{text}Share_SecGDP_03{col 17}{c |}{result}{space 2}-.1597182{col 30}{space 2}-.0115528{col 42}{space 4}  .817267{col 54}{space 2} 1.010678
{col 1}{text}Farmland_sha~03{col 17}{c |}{result}{space 2} .8842302{col 30}{space 2} .0014138{col 42}{space 4} 1.189295{col 54}{space 2}  .834794
{col 1}{text}       Grain_03{col 17}{c |}{result}{space 2}  .792847{col 30}{space 2} .0221603{col 42}{space 4} 3.879482{col 54}{space 2} .9964961
{col 1}{text}          Slope{col 17}{c |}{result}{space 2}-.9340618{col 30}{space 2}-.0461227{col 42}{space 4} .7952539{col 54}{space 2} 1.046257
{col 1}{text}{hline 16}{c BT}{hline 12}{hline 12}{hline 12}{hline 12}
{res}{txt}
{com}.         mat M = r(table) 
{txt}
{com}.         coefplot matrix(M[,2]), noci xline(0) xlabel(-0.3(0.1)0.3, labsize(medsmall)) xline(-0.25 0.25, lpattern(dash)) scheme(s1mono) rename(lnGDP_pc_03 = "{c -(}stSerif:ln{c -(}it: GDP_pc{c )-}{c -(}it:{c -(}subscript:i,2003{c )-}{c )-}{c )-}" lnRainfall_03 = "{c -(}stSerif:ln{c -(}it: Rainfall{c )-}{c -(}it:{c -(}subscript:i,2003{c )-}{c )-}{c )-}" lnTempr_03 = "{c -(}stSerif:ln{c -(}it: Tempr{c )-}{c -(}it:{c -(}subscript:i,2003{c )-}{c )-}{c )-}" Share_PriGDP_03 = "{c -(}stSerif:{c -(}it: Share_PriGDP{c )-}{c -(}it:{c -(}subscript:i,2003{c )-}{c )-}{c )-}" Share_SecGDP_03 = "{c -(}stSerif:{c -(}it: Share_SecGDP{c )-}{c -(}it:{c -(}subscript:i,2003{c )-}{c )-}{c )-}" Farmland_share_03 = "{c -(}stSerif:{c -(}it: Farmland_Shr{c )-}{c -(}it:{c -(}subscript:i,2003{c )-}{c )-}{c )-}" Grain_03 = "{c -(}stSerif:{c -(}it: Grain{c )-}{c -(}it:{c -(}subscript:i,2003{c )-}{c )-}{c )-}" Slope = "{c -(}stSerif:{c -(}it: Slope{c )-}{c -(}it:{c -(}subscript:i,2003{c )-}{c )-}{c )-}") xtitle("标准化差值") ylabel(,labsize(vmall))
{res}{p 0 4 2}
{txt}(note:  named style
vmall not found in class
gsize,  default attributes used)
{p_end}
{res}{txt}
{com}.         graph export "$logfiles/figure_V1.png", replace width(1600) height(1400)
{txt}{p 0 4 2}
(file {bf}
E:\2024-00768_数据\2024-00768+日志文件/figure_V1.png{rm}
not found)
{p_end}
{p 0 4 2}
file {bf}
E:\2024-00768_数据\2024-00768+日志文件/figure_V1.png{rm}
saved as
PNG
format
{p_end}

{com}.         
.         
.         ivreghdfe d_lnGDP_pc lnGDP_pc_03 (d_Grain = dsim_Grain) if matchv1!=., absorb(city_id) cluster(city_id)
{res}{txt}(dropped 1 {browse "http://scorreia.com/research/singletons.pdf":singleton observations})
{res}{txt}({browse "http://scorreia.com/research/hdfe.pdf":MWFE estimator} converged in 1 iterations)
{res}
{txt}IV (2SLS) estimation
{hline 20}

Estimates efficient for homoskedasticity only
Statistics robust to heteroskedasticity and clustering on city_id

Number of clusters (city_id) = {col 33}{res}   274{txt}{col 55}Number of obs = {res}    1774
{txt}{col 55}F(  2,   273) = {res}   81.30
{txt}{col 55}Prob > F      = {res}  0.0000
{txt}Total (centered) SS     = {res}  125.949013{txt}{col 55}Centered R2   = {res}  0.1665
{txt}Total (uncentered) SS   = {res}  125.949013{txt}{col 55}Uncentered R2 = {res}  0.1665
{txt}Residual SS             = {res} 104.9792417{txt}{col 55}Root MSE      = {res}   .2435

{txt}{hline 13}{c TT}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{col 14}{c |}{col 26}    Robust
{col 1}  d_lnGDP_pc{col 14}{c |} Coefficient{col 26}  std. err.{col 38}      t{col 46}   P>|t|{col 54}     [95% con{col 67}f. interval]
{hline 13}{c +}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{space 5}d_Grain {c |}{col 14}{res}{space 2}-.0600165{col 26}{space 2} .0131892{col 37}{space 1}   -4.55{col 46}{space 3}0.000{col 54}{space 4}-.0859819{col 67}{space 3}-.0340511
{txt}{space 1}lnGDP_pc_03 {c |}{col 14}{res}{space 2}-.3032217{col 26}{space 2} .0242836{col 37}{space 1}  -12.49{col 46}{space 3}0.000{col 54}{space 4}-.3510285{col 67}{space 3}-.2554149
{txt}{hline 13}{c BT}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{help ivreg2##idtest:Underidentification test} (Kleibergen-Paap rk LM statistic):{res}{col 71}  32.034
{txt}{col 52}Chi-sq({res}1{txt}) P-val =  {res}{col 73}0.0000
{txt}{hline 78}
{help ivreg2##widtest:Weak identification test} (Cragg-Donald Wald F statistic):{res}{col 71} 559.847
{txt}                         (Kleibergen-Paap rk Wald F statistic):{res}{col 71}  64.047
{txt}Stock-Yogo weak ID test critical values:{res}{txt}{col 42}10% maximal IV size{res}{col 73} 16.38
{txt}{col 42}15% maximal IV size{res}{col 73}  8.96
{txt}{col 42}20% maximal IV size{res}{col 73}  6.66
{txt}{col 42}25% maximal IV size{res}{col 73}  5.53
{txt}Source: Stock-Yogo (2005).  Reproduced by permission.
NB: Critical values are for Cragg-Donald F statistic and i.i.d. errors.
{hline 78}
{help ivreg2##overidtests:Hansen J statistic} (overidentification test of all instruments):{res}{col 71}   0.000
{txt}{col 50}(equation exactly identified)
{hline 78}
Instrumented:{col 23}d_Grain
Included instruments:{col 23}lnGDP_pc_03
Excluded instruments:{col 23}dsim_Grain
{help ivreg2##partial:Partialled-out}:{col 23}_cons
{col 23}nb: total SS, model F and R2s are after partialling-out;
{col 23}    any {help ivreg2##s_small:small-sample adjustments} include partialled-out
{col 23}    variables in regressor count K
{hline 78}
{res}
{txt}Absorbed degrees of freedom:
{res}{col 1}{text}{hline 13}{c TT}{hline 12}{hline 12}{hline 14}{hline 1}{c TRC}
{col 1}{text} Absorbed FE{col 14}{c |} Categories{col 27} - Redundant{col 39}  = Num. Coefs{col 54}{c |}
{res}{col 1}{text}{hline 13}{c +}{hline 12}{hline 12}{hline 14}{hline 1}{c RT}
{col 1}{text}     city_id{col 14}{c |}{space 1}      274{col 27}{space 1}      274{col 39}{result}{space 1}        0{col 53}{text}*{col 54}{c |}
{res}{col 1}{text}{hline 13}{c BT}{hline 12}{hline 12}{hline 14}{hline 1}{c BRC}
* = FE nested within cluster; treated as redundant for DoF computation
{res}{txt}
{com}.         outreg2 using "$logfiles/table_V1", ctitle("PSM") keep(d_Grain) append excel nocons  nor2 depvar addstat(K-P Wald F stat, e(rkf)) dec(3) adec(3) addtext(LagGDP, N, Controls, Y, County FE, N, City FE, Y, City-Year FE, N) 
{txt}{browse `"E:\2024-00768_数据\2024-00768+日志文件/table_V1.xml"'}
{browse `"E:\2024-00768_数据"' :dir}{com} : {txt}{stata `"seeout using "E:\2024-00768_数据\2024-00768+日志文件/table_V1.txt""':seeout}

{com}.         
.         
.         
.         
.         * (6). 面板固定效应
.         
.         ivreghdfe lnGDP_pc i.year#c.lnGDP_pc_03 (Grain = sim_Grain) if year<=2016&year>=2003, absorb(county_id i.city_id#i.year) cluster(city_id) partial(i.year#c.lnGDP_pc_03)
{res}{txt}(dropped 187 {browse "http://scorreia.com/research/singletons.pdf":singleton observations})
{res}{txt}({browse "http://scorreia.com/research/hdfe.pdf":MWFE estimator} converged in 8 iterations)
{res}
{txt}IV (2SLS) estimation
{hline 20}

Estimates efficient for homoskedasticity only
Statistics robust to heteroskedasticity and clustering on city_id

Number of clusters (city_id) = {col 33}{res}   311{txt}{col 55}Number of obs = {res}   27260
{txt}{col 55}F(  1,   310) = {res}   13.28
{txt}{col 55}Prob > F      = {res}  0.0003
{txt}Total (centered) SS     = {res} 387.2964449{txt}{col 55}Centered R2   = {res} -0.0259
{txt}Total (uncentered) SS   = {res} 387.2964449{txt}{col 55}Uncentered R2 = {res} -0.0259
{txt}Residual SS             = {res} 397.3135187{txt}{col 55}Root MSE      = {res}   .1208

{txt}{hline 13}{c TT}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{col 14}{c |}{col 26}    Robust
{col 1}    lnGDP_pc{col 14}{c |} Coefficient{col 26}  std. err.{col 38}      t{col 46}   P>|t|{col 54}     [95% con{col 67}f. interval]
{hline 13}{c +}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{space 7}Grain {c |}{col 14}{res}{space 2}-.0495169{col 26}{space 2} .0135897{col 37}{space 1}   -3.64{col 46}{space 3}0.000{col 54}{space 4}-.0762566{col 67}{space 3}-.0227772
{txt}{hline 13}{c BT}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{help ivreg2##idtest:Underidentification test} (Kleibergen-Paap rk LM statistic):{res}{col 71}  30.276
{txt}{col 52}Chi-sq({res}1{txt}) P-val =  {res}{col 73}0.0000
{txt}{hline 78}
{help ivreg2##widtest:Weak identification test} (Cragg-Donald Wald F statistic):{res}{col 71}4187.863
{txt}                         (Kleibergen-Paap rk Wald F statistic):{res}{col 71}  57.119
{txt}Stock-Yogo weak ID test critical values:{res}{txt}{col 42}10% maximal IV size{res}{col 73} 16.38
{txt}{col 42}15% maximal IV size{res}{col 73}  8.96
{txt}{col 42}20% maximal IV size{res}{col 73}  6.66
{txt}{col 42}25% maximal IV size{res}{col 73}  5.53
{txt}Source: Stock-Yogo (2005).  Reproduced by permission.
NB: Critical values are for Cragg-Donald F statistic and i.i.d. errors.
{hline 78}
{help ivreg2##overidtests:Hansen J statistic} (overidentification test of all instruments):{res}{col 71}   0.000
{txt}{col 50}(equation exactly identified)
{hline 78}
Instrumented:{col 23}Grain
Excluded instruments:{col 23}sim_Grain
{help ivreg2##partial:Partialled-out}:{col 23}2003b.year#c.lnGDP_pc_03 2004.year#c.lnGDP_pc_03
{col 23}2005.year#c.lnGDP_pc_03 2006.year#c.lnGDP_pc_03
{col 23}2007.year#c.lnGDP_pc_03 2008.year#c.lnGDP_pc_03
{col 23}2009.year#c.lnGDP_pc_03 2010.year#c.lnGDP_pc_03
{col 23}2011.year#c.lnGDP_pc_03 2012.year#c.lnGDP_pc_03
{col 23}2013.year#c.lnGDP_pc_03 2014.year#c.lnGDP_pc_03
{col 23}2015.year#c.lnGDP_pc_03 2016.year#c.lnGDP_pc_03 _cons
{col 23}nb: total SS, model F and R2s are after partialling-out;
{col 23}    any {help ivreg2##s_small:small-sample adjustments} include partialled-out
{col 23}    variables in regressor count K
{hline 78}
{res}
{txt}Absorbed degrees of freedom:
{res}{col 1}{text}{hline 16}{c TT}{hline 12}{hline 12}{hline 14}{hline 1}{c TRC}
{col 1}{text}    Absorbed FE{col 17}{c |} Categories{col 30} - Redundant{col 42}  = Num. Coefs{col 57}{c |}
{res}{col 1}{text}{hline 16}{c +}{hline 12}{hline 12}{hline 14}{hline 1}{c RT}
{col 1}{text}      county_id{col 17}{c |}{space 1}     2030{col 30}{space 1}     2030{col 42}{result}{space 1}        0{col 56}{text}*{col 57}{c |}
{res}{col 1}{text}   city_id#year{col 17}{c |}{space 1}     4199{col 30}{space 1}     4199{col 42}{result}{space 1}        0{col 56}{text}*{col 57}{c |}
{res}{col 1}{text}{hline 16}{c BT}{hline 12}{hline 12}{hline 14}{hline 1}{c BRC}
* = FE nested within cluster; treated as redundant for DoF computation
{res}{txt}
{com}.         
.         outreg2 using "$logfiles/table_V1", keep(Grain) append ctitle("panel fixed effects")excel nocons nor2 depvar dec(3) addstat(K-P Wald F stat, e(rkf)) adec(3) addtext(LagGDP, N, Controls, Y, County FE, Y, City FE, N, City-Year FE, Y) 
{txt}{browse `"E:\2024-00768_数据\2024-00768+日志文件/table_V1.xml"'}
{browse `"E:\2024-00768_数据"' :dir}{com} : {txt}{stata `"seeout using "E:\2024-00768_数据\2024-00768+日志文件/table_V1.txt""':seeout}

{com}.         
.         
. 
. ********************************************************************************
. ****************** 表V2 .粮食增产与县域经济发展：双重差分法 **********************
. ********************************************************************************
. 
. 
.         use $working_data\county_panel.dta ,clear
{txt}
{com}.         
.         
.                                                 ***--- 变量处理 ---***      
.         
.         
.         * 生成分组变量基期(2003)值
.         gen is_yr2003 = 1 if year==2003
{txt}(58,333 missing values generated)

{com}. 
.         foreach v of varlist Grain Farmland_share{c -(}
{txt}  2{com}.                 
.                 bysort county_id (year): egen `v'_03 = mean(`v'*is_yr2003)
{txt}  3{com}.                 
.         {c )-}
{txt}(8,523 missing values generated)
(1,005 missing values generated)

{com}.         
.         * 以中位数分组
.         //按期初粮食产量
.         egen grain_2grp = xtile(Grain) if year==2003, nquantiles(2)
{txt}(58,945 missing values generated)

{com}.         bysort county_id: egen high_grain = mean(grain_2grp*is_yr2003)
{txt}(8,523 missing values generated)

{com}.         replace high_grain = high_grain - 1  //高组为1，低组为0
{txt}(52,714 real changes made)

{com}.         
.         //按期初耕地占比
.         egen farmlandsr_2grp = xtile(Farmland_share) if year==2003, nquantiles(2)
{txt}(58,361 missing values generated)

{com}.         bysort county_id: egen high_farmlandshr = mean(farmlandsr_2grp*is_yr2003)
{txt}(1,005 missing values generated)

{com}.         replace high_farmlandshr = high_farmlandshr - 1  //高组为1，低组为0
{txt}(60,232 real changes made)

{com}.         
.         
.         * post-treatment indicator
.         gen post_2004 = (year>=2004)
{txt}
{com}.         
.         
.         
.                                                 ***--- 回归结果 ---***      
. 
.                                                 
.         * (1). 期初粮食产量
.         
.         reghdfe lnGDP_pc c.Grain_03#c.post_2004 if year>=1998&year<=2016,absorb(county_id i.city_id#i.year) vce(cluster city_id)
{res}{txt}(dropped 258 {browse "http://scorreia.com/research/singletons.pdf":singleton observations})
{res}{txt}({browse "http://scorreia.com/research/hdfe.pdf":MWFE estimator} converged in 11 iterations)
{res}
{txt}HDFE Linear regression{col 51}Number of obs{col 67}= {res}    37,372
{txt}Absorbing 2 HDFE groups{col 51}F({res}   1{txt},{res}    313{txt}){col 67}= {res}     18.57
{txt}Statistics robust to heteroskedasticity{col 51}Prob > F{col 67}= {res}    0.0000
{txt}{col 51}R-squared{col 67}= {res}    0.9754
{txt}{col 51}Adj R-squared{col 67}= {res}    0.9688
{txt}{col 51}Within R-sq.{col 67}= {res}    0.0061
{txt}{col 1}Number of clusters ({res}city_id{txt}) {col 30}= {res}       314{txt}{col 51}Root MSE{col 67}= {res}    0.1651

{txt}{ralign 88:(Std. err. adjusted for {res:314} clusters in {res:city_id})}
{hline 23}{c TT}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{col 24}{c |}{col 36}    Robust
{col 1}              lnGDP_pc{col 24}{c |} Coefficient{col 36}  std. err.{col 48}      t{col 56}   P>|t|{col 64}     [95% con{col 77}f. interval]
{hline 23}{c +}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
c.Grain_03#c.post_2004 {c |}{col 24}{res}{space 2}-.0239378{col 36}{space 2} .0055556{col 47}{space 1}   -4.31{col 56}{space 3}0.000{col 64}{space 4} -.034869{col 77}{space 3}-.0130067
{txt}{space 22} {c |}
{space 17}_cons {c |}{col 24}{res}{space 2} 9.206418{col 36}{space 2} .0070718{col 47}{space 1} 1301.85{col 56}{space 3}0.000{col 64}{space 4} 9.192503{col 77}{space 3} 9.220332
{txt}{hline 23}{c BT}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{res}
{txt}Absorbed degrees of freedom:
{res}{col 1}{text}{hline 16}{c TT}{hline 12}{hline 12}{hline 14}{hline 1}{c TRC}
{col 1}{text}    Absorbed FE{col 17}{c |} Categories{col 30} - Redundant{col 42}  = Num. Coefs{col 57}{c |}
{res}{col 1}{text}{hline 16}{c +}{hline 12}{hline 12}{hline 14}{hline 1}{c RT}
{col 1}{text}      county_id{col 17}{c |}{space 1}     2160{col 30}{space 1}     2160{col 42}{result}{space 1}        0{col 56}{text}*{col 57}{c |}
{res}{col 1}{text}   city_id#year{col 17}{c |}{space 1}     5716{col 30}{space 1}     5716{col 42}{result}{space 1}        0{col 56}{text}*{col 57}{c |}
{res}{col 1}{text}{hline 16}{c BT}{hline 12}{hline 12}{hline 14}{hline 1}{c BRC}
* = FE nested within cluster; treated as redundant for DoF computation
{res}{txt}
{com}.         
.         outreg2 using "$logfiles/table_V2", replace excel nocons depvar dec(3) addtext(County FE, Y, City-Year FE, Y) 
{txt}{browse `"E:\2024-00768_数据\2024-00768+日志文件/table_V2.xml"'}
{browse `"E:\2024-00768_数据"' :dir}{com} : {txt}{stata `"seeout using "E:\2024-00768_数据\2024-00768+日志文件/table_V2.txt""':seeout}

{com}.         
.         
.         * (2). 期初粮食产量中位数分组(1=高,0=低)
.         
.         reghdfe lnGDP_pc c.high_grain#c.post_2004 if year>=1998&year<=2016,absorb(county_id i.city_id#i.year) vce(cluster city_id)
{res}{txt}(dropped 258 {browse "http://scorreia.com/research/singletons.pdf":singleton observations})
{res}{txt}({browse "http://scorreia.com/research/hdfe.pdf":MWFE estimator} converged in 11 iterations)
{res}
{txt}HDFE Linear regression{col 51}Number of obs{col 67}= {res}    37,372
{txt}Absorbing 2 HDFE groups{col 51}F({res}   1{txt},{res}    313{txt}){col 67}= {res}     17.97
{txt}Statistics robust to heteroskedasticity{col 51}Prob > F{col 67}= {res}    0.0000
{txt}{col 51}R-squared{col 67}= {res}    0.9754
{txt}{col 51}Adj R-squared{col 67}= {res}    0.9688
{txt}{col 51}Within R-sq.{col 67}= {res}    0.0057
{txt}{col 1}Number of clusters ({res}city_id{txt}) {col 30}= {res}       314{txt}{col 51}Root MSE{col 67}= {res}    0.1651

{txt}{ralign 90:(Std. err. adjusted for {res:314} clusters in {res:city_id})}
{hline 25}{c TT}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{col 26}{c |}{col 38}    Robust
{col 1}                lnGDP_pc{col 26}{c |} Coefficient{col 38}  std. err.{col 50}      t{col 58}   P>|t|{col 66}     [95% con{col 79}f. interval]
{hline 25}{c +}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
c.high_grain#c.post_2004 {c |}{col 26}{res}{space 2}-.0712386{col 38}{space 2} .0168055{col 49}{space 1}   -4.24{col 58}{space 3}0.000{col 66}{space 4}-.1043045{col 79}{space 3}-.0381726
{txt}{space 24} {c |}
{space 19}_cons {c |}{col 26}{res}{space 2} 9.201519{col 38}{space 2} .0060325{col 49}{space 1} 1525.33{col 58}{space 3}0.000{col 66}{space 4} 9.189649{col 79}{space 3} 9.213388
{txt}{hline 25}{c BT}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{res}
{txt}Absorbed degrees of freedom:
{res}{col 1}{text}{hline 16}{c TT}{hline 12}{hline 12}{hline 14}{hline 1}{c TRC}
{col 1}{text}    Absorbed FE{col 17}{c |} Categories{col 30} - Redundant{col 42}  = Num. Coefs{col 57}{c |}
{res}{col 1}{text}{hline 16}{c +}{hline 12}{hline 12}{hline 14}{hline 1}{c RT}
{col 1}{text}      county_id{col 17}{c |}{space 1}     2160{col 30}{space 1}     2160{col 42}{result}{space 1}        0{col 56}{text}*{col 57}{c |}
{res}{col 1}{text}   city_id#year{col 17}{c |}{space 1}     5716{col 30}{space 1}     5716{col 42}{result}{space 1}        0{col 56}{text}*{col 57}{c |}
{res}{col 1}{text}{hline 16}{c BT}{hline 12}{hline 12}{hline 14}{hline 1}{c BRC}
* = FE nested within cluster; treated as redundant for DoF computation
{res}{txt}
{com}.         
.         outreg2 using "$logfiles/table_V2", append excel nocons depvar dec(3) addtext(County FE, Y, City-Year FE, Y) 
{txt}{browse `"E:\2024-00768_数据\2024-00768+日志文件/table_V2.xml"'}
{browse `"E:\2024-00768_数据"' :dir}{com} : {txt}{stata `"seeout using "E:\2024-00768_数据\2024-00768+日志文件/table_V2.txt""':seeout}

{com}.         
.         
.         * (3). 期初耕地占比
.         
.         reghdfe lnGDP_pc c.Farmland_share_03#c.post_2004 if year>=1998&year<=2016,absorb(county_id i.city_id#i.year) vce(cluster city_id)
{res}{txt}(dropped 255 {browse "http://scorreia.com/research/singletons.pdf":singleton observations})
{res}{txt}({browse "http://scorreia.com/research/hdfe.pdf":MWFE estimator} converged in 12 iterations)
{res}
{txt}HDFE Linear regression{col 51}Number of obs{col 67}= {res}    38,357
{txt}Absorbing 2 HDFE groups{col 51}F({res}   1{txt},{res}    315{txt}){col 67}= {res}     10.38
{txt}Statistics robust to heteroskedasticity{col 51}Prob > F{col 67}= {res}    0.0014
{txt}{col 51}R-squared{col 67}= {res}    0.9729
{txt}{col 51}Adj R-squared{col 67}= {res}    0.9658
{txt}{col 51}Within R-sq.{col 67}= {res}    0.0054
{txt}{col 1}Number of clusters ({res}city_id{txt}) {col 30}= {res}       316{txt}{col 51}Root MSE{col 67}= {res}    0.1745

{txt}{ralign 97:(Std. err. adjusted for {res:316} clusters in {res:city_id})}
{hline 32}{c TT}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{col 33}{c |}{col 45}    Robust
{col 1}                       lnGDP_pc{col 33}{c |} Coefficient{col 45}  std. err.{col 57}      t{col 65}   P>|t|{col 73}     [95% con{col 86}f. interval]
{hline 32}{c +}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
c.Farmland_share_03#c.post_2004 {c |}{col 33}{res}{space 2}-.0018991{col 45}{space 2} .0005893{col 56}{space 1}   -3.22{col 65}{space 3}0.001{col 73}{space 4}-.0030586{col 86}{space 3}-.0007395
{txt}{space 31} {c |}
{space 26}_cons {c |}{col 33}{res}{space 2} 9.242214{col 45}{space 2} .0172955{col 56}{space 1}  534.37{col 65}{space 3}0.000{col 73}{space 4} 9.208185{col 86}{space 3} 9.276244
{txt}{hline 32}{c BT}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{res}
{txt}Absorbed degrees of freedom:
{res}{col 1}{text}{hline 16}{c TT}{hline 12}{hline 12}{hline 14}{hline 1}{c TRC}
{col 1}{text}    Absorbed FE{col 17}{c |} Categories{col 30} - Redundant{col 42}  = Num. Coefs{col 57}{c |}
{res}{col 1}{text}{hline 16}{c +}{hline 12}{hline 12}{hline 14}{hline 1}{c RT}
{col 1}{text}      county_id{col 17}{c |}{space 1}     2245{col 30}{space 1}     2245{col 42}{result}{space 1}        0{col 56}{text}*{col 57}{c |}
{res}{col 1}{text}   city_id#year{col 17}{c |}{space 1}     5736{col 30}{space 1}     5736{col 42}{result}{space 1}        0{col 56}{text}*{col 57}{c |}
{res}{col 1}{text}{hline 16}{c BT}{hline 12}{hline 12}{hline 14}{hline 1}{c BRC}
* = FE nested within cluster; treated as redundant for DoF computation
{res}{txt}
{com}.         
.         outreg2 using "$logfiles/table_V2", append excel nocons depvar dec(3) addtext(County FE, Y, City-Year FE, Y) 
{txt}{browse `"E:\2024-00768_数据\2024-00768+日志文件/table_V2.xml"'}
{browse `"E:\2024-00768_数据"' :dir}{com} : {txt}{stata `"seeout using "E:\2024-00768_数据\2024-00768+日志文件/table_V2.txt""':seeout}

{com}. 
.         
.         * (4). 期初耕地占比中位数分组(1=高,0=低)
.         
.         reghdfe lnGDP_pc c.high_farmlandshr#c.post_2004 if year>=1998&year<=2016,absorb(county_id i.city_id#i.year) vce(cluster city_id)
{res}{txt}(dropped 255 {browse "http://scorreia.com/research/singletons.pdf":singleton observations})
{res}{txt}({browse "http://scorreia.com/research/hdfe.pdf":MWFE estimator} converged in 12 iterations)
{res}
{txt}HDFE Linear regression{col 51}Number of obs{col 67}= {res}    38,357
{txt}Absorbing 2 HDFE groups{col 51}F({res}   1{txt},{res}    315{txt}){col 67}= {res}      7.35
{txt}Statistics robust to heteroskedasticity{col 51}Prob > F{col 67}= {res}    0.0071
{txt}{col 51}R-squared{col 67}= {res}    0.9729
{txt}{col 51}Adj R-squared{col 67}= {res}    0.9658
{txt}{col 51}Within R-sq.{col 67}= {res}    0.0035
{txt}{col 1}Number of clusters ({res}city_id{txt}) {col 30}= {res}       316{txt}{col 51}Root MSE{col 67}= {res}    0.1747

{txt}{ralign 96:(Std. err. adjusted for {res:316} clusters in {res:city_id})}
{hline 31}{c TT}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{col 32}{c |}{col 44}    Robust
{col 1}                      lnGDP_pc{col 32}{c |} Coefficient{col 44}  std. err.{col 56}      t{col 64}   P>|t|{col 72}     [95% con{col 85}f. interval]
{hline 31}{c +}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
c.high_farmlandshr#c.post_2004 {c |}{col 32}{res}{space 2}-.0690038{col 44}{space 2} .0254478{col 55}{space 1}   -2.71{col 64}{space 3}0.007{col 72}{space 4}-.1190729{col 85}{space 3}-.0189348
{txt}{space 30} {c |}
{space 25}_cons {c |}{col 32}{res}{space 2} 9.209412{col 44}{space 2} .0084569{col 55}{space 1} 1088.98{col 64}{space 3}0.000{col 72}{space 4} 9.192773{col 85}{space 3} 9.226051
{txt}{hline 31}{c BT}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{res}
{txt}Absorbed degrees of freedom:
{res}{col 1}{text}{hline 16}{c TT}{hline 12}{hline 12}{hline 14}{hline 1}{c TRC}
{col 1}{text}    Absorbed FE{col 17}{c |} Categories{col 30} - Redundant{col 42}  = Num. Coefs{col 57}{c |}
{res}{col 1}{text}{hline 16}{c +}{hline 12}{hline 12}{hline 14}{hline 1}{c RT}
{col 1}{text}      county_id{col 17}{c |}{space 1}     2245{col 30}{space 1}     2245{col 42}{result}{space 1}        0{col 56}{text}*{col 57}{c |}
{res}{col 1}{text}   city_id#year{col 17}{c |}{space 1}     5736{col 30}{space 1}     5736{col 42}{result}{space 1}        0{col 56}{text}*{col 57}{c |}
{res}{col 1}{text}{hline 16}{c BT}{hline 12}{hline 12}{hline 14}{hline 1}{c BRC}
* = FE nested within cluster; treated as redundant for DoF computation
{res}{txt}
{com}.         
.         outreg2 using "$logfiles/table_V2", append excel nocons depvar dec(3) addtext(County FE, Y, City-Year FE, Y)
{txt}{browse `"E:\2024-00768_数据\2024-00768+日志文件/table_V2.xml"'}
{browse `"E:\2024-00768_数据"' :dir}{com} : {txt}{stata `"seeout using "E:\2024-00768_数据\2024-00768+日志文件/table_V2.txt""':seeout}

{com}. 
.         
.         
. 
. *******************************************************************************
. ******************* 表 V3.粮食增产与县域经济发展：稳健性检验II ******************
. *******************************************************************************
. 
.         use $working_data\county_panel.dta ,clear
{txt}
{com}.         gen lnpop = ln(pop)
{txt}(9,340 missing values generated)

{com}.         
.                                                 ***--- 变量处理 ---***      
.         
.         * 生成变量基期(2003)值
.         gen is_yr2003 = 1 if year==2003
{txt}(58,333 missing values generated)

{com}. 
.         foreach v of varlist Grain lnGDP_pc lnGDP lnLight lnPDen Sown_area lnpop{c -(}
{txt}  2{com}.                 
.                 bysort county_id (year): egen `v'_03 = mean(`v'*is_yr2003)
{txt}  3{com}.                 
.         {c )-}
{txt}(8,523 missing values generated)
(11,649 missing values generated)
(9,878 missing values generated)
(4,082 missing values generated)
(1,005 missing values generated)
(24,232 missing values generated)
(7,695 missing values generated)

{com}.         
.         foreach v of varlist Grain lnGDP_pc lnGDP lnLight lnPDen Sown_area lnpop{c -(}
{txt}  2{com}.                 
.                 gen d_`v' = `v' - `v'_03
{txt}  3{com}.                 
.         {c )-}
{txt}(13,008 missing values generated)
(16,346 missing values generated)
(12,277 missing values generated)
(5,822 missing values generated)
(9,285 missing values generated)
(35,126 missing values generated)
(11,803 missing values generated)

{com}. 
. 
. 
.                                                 ***--- 回归结果 ---***      
. 
.         * (1). 总量GDP
.         
.         ivreghdfe d_lnGDP lnGDP_pc_03 (d_Grain = dsim_Grain) if year==2016, absorb(city_id) cluster(city_id)
{res}{txt}(dropped 12 {browse "http://scorreia.com/research/singletons.pdf":singleton observations})
{res}{txt}({browse "http://scorreia.com/research/hdfe.pdf":MWFE estimator} converged in 1 iterations)
{res}
{txt}IV (2SLS) estimation
{hline 20}

Estimates efficient for homoskedasticity only
Statistics robust to heteroskedasticity and clustering on city_id

Number of clusters (city_id) = {col 33}{res}   310{txt}{col 55}Number of obs = {res}    2010
{txt}{col 55}F(  2,   309) = {res}   59.01
{txt}{col 55}Prob > F      = {res}  0.0000
{txt}Total (centered) SS     = {res} 141.3506037{txt}{col 55}Centered R2   = {res}  0.0516
{txt}Total (uncentered) SS   = {res} 141.3506037{txt}{col 55}Uncentered R2 = {res}  0.0516
{txt}Residual SS             = {res} 134.0592277{txt}{col 55}Root MSE      = {res}   .2584

{txt}{hline 13}{c TT}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{col 14}{c |}{col 26}    Robust
{col 1}     d_lnGDP{col 14}{c |} Coefficient{col 26}  std. err.{col 38}      t{col 46}   P>|t|{col 54}     [95% con{col 67}f. interval]
{hline 13}{c +}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{space 5}d_Grain {c |}{col 14}{res}{space 2}-.0748672{col 26}{space 2} .0140801{col 37}{space 1}   -5.32{col 46}{space 3}0.000{col 54}{space 4}-.1025721{col 67}{space 3}-.0471623
{txt}{space 1}lnGDP_pc_03 {c |}{col 14}{res}{space 2}-.2391165{col 26}{space 2} .0230727{col 37}{space 1}  -10.36{col 46}{space 3}0.000{col 54}{space 4}-.2845158{col 67}{space 3}-.1937171
{txt}{hline 13}{c BT}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{help ivreg2##idtest:Underidentification test} (Kleibergen-Paap rk LM statistic):{res}{col 71}  34.917
{txt}{col 52}Chi-sq({res}1{txt}) P-val =  {res}{col 73}0.0000
{txt}{hline 78}
{help ivreg2##widtest:Weak identification test} (Cragg-Donald Wald F statistic):{res}{col 71} 651.333
{txt}                         (Kleibergen-Paap rk Wald F statistic):{res}{col 71}  67.540
{txt}Stock-Yogo weak ID test critical values:{res}{txt}{col 42}10% maximal IV size{res}{col 73} 16.38
{txt}{col 42}15% maximal IV size{res}{col 73}  8.96
{txt}{col 42}20% maximal IV size{res}{col 73}  6.66
{txt}{col 42}25% maximal IV size{res}{col 73}  5.53
{txt}Source: Stock-Yogo (2005).  Reproduced by permission.
NB: Critical values are for Cragg-Donald F statistic and i.i.d. errors.
{hline 78}
{help ivreg2##overidtests:Hansen J statistic} (overidentification test of all instruments):{res}{col 71}   0.000
{txt}{col 50}(equation exactly identified)
{hline 78}
Instrumented:{col 23}d_Grain
Included instruments:{col 23}lnGDP_pc_03
Excluded instruments:{col 23}dsim_Grain
{help ivreg2##partial:Partialled-out}:{col 23}_cons
{col 23}nb: total SS, model F and R2s are after partialling-out;
{col 23}    any {help ivreg2##s_small:small-sample adjustments} include partialled-out
{col 23}    variables in regressor count K
{hline 78}
{res}
{txt}Absorbed degrees of freedom:
{res}{col 1}{text}{hline 13}{c TT}{hline 12}{hline 12}{hline 14}{hline 1}{c TRC}
{col 1}{text} Absorbed FE{col 14}{c |} Categories{col 27} - Redundant{col 39}  = Num. Coefs{col 54}{c |}
{res}{col 1}{text}{hline 13}{c +}{hline 12}{hline 12}{hline 14}{hline 1}{c RT}
{col 1}{text}     city_id{col 14}{c |}{space 1}      310{col 27}{space 1}      310{col 39}{result}{space 1}        0{col 53}{text}*{col 54}{c |}
{res}{col 1}{text}{hline 13}{c BT}{hline 12}{hline 12}{hline 14}{hline 1}{c BRC}
* = FE nested within cluster; treated as redundant for DoF computation
{res}{txt}
{com}.         
.         outreg2 using "$logfiles/table_V3", ctitle("GDP") addtext(Controls, Y, City FE, Y)  replace excel nocons nor2 depvar dec(3) keep(d_Grain) addstat(K-P Wald F, e(rkf)) adec(3)
{txt}{browse `"E:\2024-00768_数据\2024-00768+日志文件/table_V3.xml"'}
{browse `"E:\2024-00768_数据"' :dir}{com} : {txt}{stata `"seeout using "E:\2024-00768_数据\2024-00768+日志文件/table_V3.txt""':seeout}

{com}.         
.         
.         * (2). 夜间灯光
.         
.         ivreghdfe d_lnLight lnLight_03 (d_Grain = dsim_Grain) if year==2016, absorb(city_id) cluster(city_id)
{res}{txt}(dropped 13 {browse "http://scorreia.com/research/singletons.pdf":singleton observations})
{res}{txt}({browse "http://scorreia.com/research/hdfe.pdf":MWFE estimator} converged in 1 iterations)
{res}
{txt}IV (2SLS) estimation
{hline 20}

Estimates efficient for homoskedasticity only
Statistics robust to heteroskedasticity and clustering on city_id

Number of clusters (city_id) = {col 33}{res}   311{txt}{col 55}Number of obs = {res}    2138
{txt}{col 55}F(  2,   310) = {res}  117.10
{txt}{col 55}Prob > F      = {res}  0.0000
{txt}Total (centered) SS     = {res} 360.8282556{txt}{col 55}Centered R2   = {res}  0.3225
{txt}Total (uncentered) SS   = {res} 360.8282556{txt}{col 55}Uncentered R2 = {res}  0.3225
{txt}Residual SS             = {res} 244.4643308{txt}{col 55}Root MSE      = {res}   .3384

{txt}{hline 13}{c TT}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{col 14}{c |}{col 26}    Robust
{col 1}   d_lnLight{col 14}{c |} Coefficient{col 26}  std. err.{col 38}      t{col 46}   P>|t|{col 54}     [95% con{col 67}f. interval]
{hline 13}{c +}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{space 5}d_Grain {c |}{col 14}{res}{space 2}-.0445793{col 26}{space 2} .0178652{col 37}{space 1}   -2.50{col 46}{space 3}0.013{col 54}{space 4}-.0797317{col 67}{space 3}-.0094269
{txt}{space 2}lnLight_03 {c |}{col 14}{res}{space 2}-.2619702{col 26}{space 2} .0171861{col 37}{space 1}  -15.24{col 46}{space 3}0.000{col 54}{space 4}-.2957863{col 67}{space 3}-.2281541
{txt}{hline 13}{c BT}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{help ivreg2##idtest:Underidentification test} (Kleibergen-Paap rk LM statistic):{res}{col 71}  38.865
{txt}{col 52}Chi-sq({res}1{txt}) P-val =  {res}{col 73}0.0000
{txt}{hline 78}
{help ivreg2##widtest:Weak identification test} (Cragg-Donald Wald F statistic):{res}{col 71} 650.034
{txt}                         (Kleibergen-Paap rk Wald F statistic):{res}{col 71}  71.568
{txt}Stock-Yogo weak ID test critical values:{res}{txt}{col 42}10% maximal IV size{res}{col 73} 16.38
{txt}{col 42}15% maximal IV size{res}{col 73}  8.96
{txt}{col 42}20% maximal IV size{res}{col 73}  6.66
{txt}{col 42}25% maximal IV size{res}{col 73}  5.53
{txt}Source: Stock-Yogo (2005).  Reproduced by permission.
NB: Critical values are for Cragg-Donald F statistic and i.i.d. errors.
{hline 78}
{help ivreg2##overidtests:Hansen J statistic} (overidentification test of all instruments):{res}{col 71}   0.000
{txt}{col 50}(equation exactly identified)
{hline 78}
Instrumented:{col 23}d_Grain
Included instruments:{col 23}lnLight_03
Excluded instruments:{col 23}dsim_Grain
{help ivreg2##partial:Partialled-out}:{col 23}_cons
{col 23}nb: total SS, model F and R2s are after partialling-out;
{col 23}    any {help ivreg2##s_small:small-sample adjustments} include partialled-out
{col 23}    variables in regressor count K
{hline 78}
{res}
{txt}Absorbed degrees of freedom:
{res}{col 1}{text}{hline 13}{c TT}{hline 12}{hline 12}{hline 14}{hline 1}{c TRC}
{col 1}{text} Absorbed FE{col 14}{c |} Categories{col 27} - Redundant{col 39}  = Num. Coefs{col 54}{c |}
{res}{col 1}{text}{hline 13}{c +}{hline 12}{hline 12}{hline 14}{hline 1}{c RT}
{col 1}{text}     city_id{col 14}{c |}{space 1}      311{col 27}{space 1}      311{col 39}{result}{space 1}        0{col 53}{text}*{col 54}{c |}
{res}{col 1}{text}{hline 13}{c BT}{hline 12}{hline 12}{hline 14}{hline 1}{c BRC}
* = FE nested within cluster; treated as redundant for DoF computation
{res}{txt}
{com}.         
.         outreg2 using "$logfiles/table_V3", ctitle("light") addtext(Controls, Y, City FE, Y) append excel nocons  nor2 depvar addstat(K-P Wald F, e(rkf)) keep(d_Grain) dec(3) adec(3)
{txt}{browse `"E:\2024-00768_数据\2024-00768+日志文件/table_V3.xml"'}
{browse `"E:\2024-00768_数据"' :dir}{com} : {txt}{stata `"seeout using "E:\2024-00768_数据\2024-00768+日志文件/table_V3.txt""':seeout}

{com}.         
.         
.         * (3). 人口密度
.         
.         ivreghdfe d_lnPDen lnPDen_03 (d_Grain = dsim_Grain) if year==2016, absorb(city_id) cluster(city_id)
{res}{txt}(dropped 10 {browse "http://scorreia.com/research/singletons.pdf":singleton observations})
{res}{txt}({browse "http://scorreia.com/research/hdfe.pdf":MWFE estimator} converged in 1 iterations)
{res}
{txt}IV (2SLS) estimation
{hline 20}

Estimates efficient for homoskedasticity only
Statistics robust to heteroskedasticity and clustering on city_id

Number of clusters (city_id) = {col 33}{res}   314{txt}{col 55}Number of obs = {res}    2176
{txt}{col 55}F(  2,   313) = {res}    4.28
{txt}{col 55}Prob > F      = {res}  0.0146
{txt}Total (centered) SS     = {res} 52.37352691{txt}{col 55}Centered R2   = {res} -0.0035
{txt}Total (uncentered) SS   = {res} 52.37352691{txt}{col 55}Uncentered R2 = {res} -0.0035
{txt}Residual SS             = {res} 52.55832226{txt}{col 55}Root MSE      = {res}   .1555

{txt}{hline 13}{c TT}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{col 14}{c |}{col 26}    Robust
{col 1}    d_lnPDen{col 14}{c |} Coefficient{col 26}  std. err.{col 38}      t{col 46}   P>|t|{col 54}     [95% con{col 67}f. interval]
{hline 13}{c +}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{space 5}d_Grain {c |}{col 14}{res}{space 2}-.0225515{col 26}{space 2} .0096706{col 37}{space 1}   -2.33{col 46}{space 3}0.020{col 54}{space 4} -.041579{col 67}{space 3}-.0035239
{txt}{space 3}lnPDen_03 {c |}{col 14}{res}{space 2} .0167936{col 26}{space 2} .0099114{col 37}{space 1}    1.69{col 46}{space 3}0.091{col 54}{space 4}-.0027078{col 67}{space 3} .0362951
{txt}{hline 13}{c BT}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{help ivreg2##idtest:Underidentification test} (Kleibergen-Paap rk LM statistic):{res}{col 71}  38.977
{txt}{col 52}Chi-sq({res}1{txt}) P-val =  {res}{col 73}0.0000
{txt}{hline 78}
{help ivreg2##widtest:Weak identification test} (Cragg-Donald Wald F statistic):{res}{col 71} 689.654
{txt}                         (Kleibergen-Paap rk Wald F statistic):{res}{col 71}  73.507
{txt}Stock-Yogo weak ID test critical values:{res}{txt}{col 42}10% maximal IV size{res}{col 73} 16.38
{txt}{col 42}15% maximal IV size{res}{col 73}  8.96
{txt}{col 42}20% maximal IV size{res}{col 73}  6.66
{txt}{col 42}25% maximal IV size{res}{col 73}  5.53
{txt}Source: Stock-Yogo (2005).  Reproduced by permission.
NB: Critical values are for Cragg-Donald F statistic and i.i.d. errors.
{hline 78}
{help ivreg2##overidtests:Hansen J statistic} (overidentification test of all instruments):{res}{col 71}   0.000
{txt}{col 50}(equation exactly identified)
{hline 78}
Instrumented:{col 23}d_Grain
Included instruments:{col 23}lnPDen_03
Excluded instruments:{col 23}dsim_Grain
{help ivreg2##partial:Partialled-out}:{col 23}_cons
{col 23}nb: total SS, model F and R2s are after partialling-out;
{col 23}    any {help ivreg2##s_small:small-sample adjustments} include partialled-out
{col 23}    variables in regressor count K
{hline 78}
{res}
{txt}Absorbed degrees of freedom:
{res}{col 1}{text}{hline 13}{c TT}{hline 12}{hline 12}{hline 14}{hline 1}{c TRC}
{col 1}{text} Absorbed FE{col 14}{c |} Categories{col 27} - Redundant{col 39}  = Num. Coefs{col 54}{c |}
{res}{col 1}{text}{hline 13}{c +}{hline 12}{hline 12}{hline 14}{hline 1}{c RT}
{col 1}{text}     city_id{col 14}{c |}{space 1}      314{col 27}{space 1}      314{col 39}{result}{space 1}        0{col 53}{text}*{col 54}{c |}
{res}{col 1}{text}{hline 13}{c BT}{hline 12}{hline 12}{hline 14}{hline 1}{c BRC}
* = FE nested within cluster; treated as redundant for DoF computation
{res}{txt}
{com}.         
.         outreg2 using "$logfiles/table_V3", ctitle("population density") addtext(Controls, Y, City FE, Y) append excel nocons nor2 depvar addstat(K-P Wald F, e(rkf)) keep(d_Grain) dec(3) adec(3)
{txt}{browse `"E:\2024-00768_数据\2024-00768+日志文件/table_V3.xml"'}
{browse `"E:\2024-00768_数据"' :dir}{com} : {txt}{stata `"seeout using "E:\2024-00768_数据\2024-00768+日志文件/table_V3.txt""':seeout}

{com}.          
.          
.         * (4). 播种面积变化作为自变量
.         
.         ivreghdfe d_lnGDP_pc lnGDP_pc_03 (d_Sown_area = dsim_Grain) if year==2016, absorb(city_id) cluster(city_id)
{res}{txt}(dropped 6 {browse "http://scorreia.com/research/singletons.pdf":singleton observations})
{res}{txt}({browse "http://scorreia.com/research/hdfe.pdf":MWFE estimator} converged in 1 iterations)
{res}
{txt}IV (2SLS) estimation
{hline 20}

Estimates efficient for homoskedasticity only
Statistics robust to heteroskedasticity and clustering on city_id

Number of clusters (city_id) = {col 33}{res}   149{txt}{col 55}Number of obs = {res}     955
{txt}{col 55}F(  2,   148) = {res}   33.81
{txt}{col 55}Prob > F      = {res}  0.0000
{txt}Total (centered) SS     = {res} 65.37563916{txt}{col 55}Centered R2   = {res}  0.0254
{txt}Total (uncentered) SS   = {res} 65.37563916{txt}{col 55}Uncentered R2 = {res}  0.0254
{txt}Residual SS             = {res} 63.71255542{txt}{col 55}Root MSE      = {res}   .2587

{txt}{hline 13}{c TT}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{col 14}{c |}{col 26}    Robust
{col 1}  d_lnGDP_pc{col 14}{c |} Coefficient{col 26}  std. err.{col 38}      t{col 46}   P>|t|{col 54}     [95% con{col 67}f. interval]
{hline 13}{c +}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{space 1}d_Sown_area {c |}{col 14}{res}{space 2}-.0734353{col 26}{space 2} .0198823{col 37}{space 1}   -3.69{col 46}{space 3}0.000{col 54}{space 4}-.1127252{col 67}{space 3}-.0341454
{txt}{space 1}lnGDP_pc_03 {c |}{col 14}{res}{space 2}-.2749416{col 26}{space 2} .0371118{col 37}{space 1}   -7.41{col 46}{space 3}0.000{col 54}{space 4}-.3482791{col 67}{space 3}-.2016042
{txt}{hline 13}{c BT}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{help ivreg2##idtest:Underidentification test} (Kleibergen-Paap rk LM statistic):{res}{col 71}  10.841
{txt}{col 52}Chi-sq({res}1{txt}) P-val =  {res}{col 73}0.0010
{txt}{hline 78}
{help ivreg2##widtest:Weak identification test} (Cragg-Donald Wald F statistic):{res}{col 71} 145.605
{txt}                         (Kleibergen-Paap rk Wald F statistic):{res}{col 71}  33.600
{txt}Stock-Yogo weak ID test critical values:{res}{txt}{col 42}10% maximal IV size{res}{col 73} 16.38
{txt}{col 42}15% maximal IV size{res}{col 73}  8.96
{txt}{col 42}20% maximal IV size{res}{col 73}  6.66
{txt}{col 42}25% maximal IV size{res}{col 73}  5.53
{txt}Source: Stock-Yogo (2005).  Reproduced by permission.
NB: Critical values are for Cragg-Donald F statistic and i.i.d. errors.
{hline 78}
{help ivreg2##overidtests:Hansen J statistic} (overidentification test of all instruments):{res}{col 71}   0.000
{txt}{col 50}(equation exactly identified)
{hline 78}
Instrumented:{col 23}d_Sown_area
Included instruments:{col 23}lnGDP_pc_03
Excluded instruments:{col 23}dsim_Grain
{help ivreg2##partial:Partialled-out}:{col 23}_cons
{col 23}nb: total SS, model F and R2s are after partialling-out;
{col 23}    any {help ivreg2##s_small:small-sample adjustments} include partialled-out
{col 23}    variables in regressor count K
{hline 78}
{res}
{txt}Absorbed degrees of freedom:
{res}{col 1}{text}{hline 13}{c TT}{hline 12}{hline 12}{hline 14}{hline 1}{c TRC}
{col 1}{text} Absorbed FE{col 14}{c |} Categories{col 27} - Redundant{col 39}  = Num. Coefs{col 54}{c |}
{res}{col 1}{text}{hline 13}{c +}{hline 12}{hline 12}{hline 14}{hline 1}{c RT}
{col 1}{text}     city_id{col 14}{c |}{space 1}      149{col 27}{space 1}      149{col 39}{result}{space 1}        0{col 53}{text}*{col 54}{c |}
{res}{col 1}{text}{hline 13}{c BT}{hline 12}{hline 12}{hline 14}{hline 1}{c BRC}
* = FE nested within cluster; treated as redundant for DoF computation
{res}{txt}
{com}.         
.         outreg2 using "$logfiles/table_V3", ctitle("sownarea") addtext(Controls, Y, City FE, Y) append excel nocons nor2 depvar addstat(K-P Wald F, e(rkf)) keep(d_Sown_area) dec(3) adec(3)
{txt}{browse `"E:\2024-00768_数据\2024-00768+日志文件/table_V3.xml"'}
{browse `"E:\2024-00768_数据"' :dir}{com} : {txt}{stata `"seeout using "E:\2024-00768_数据\2024-00768+日志文件/table_V3.txt""':seeout}

{com}.         
.         
.         * (5). 增加控制人口总量变化
.         ivreghdfe d_lnGDP lnGDP_pc_03 d_lnpop (d_Grain = dsim_Grain) if year==2016, absorb(city_id) cluster(city_id)
{res}{txt}(dropped 11 {browse "http://scorreia.com/research/singletons.pdf":singleton observations})
{res}{txt}({browse "http://scorreia.com/research/hdfe.pdf":MWFE estimator} converged in 1 iterations)
{res}
{txt}IV (2SLS) estimation
{hline 20}

Estimates efficient for homoskedasticity only
Statistics robust to heteroskedasticity and clustering on city_id

Number of clusters (city_id) = {col 33}{res}   276{txt}{col 55}Number of obs = {res}    1789
{txt}{col 55}F(  3,   275) = {res}   63.38
{txt}{col 55}Prob > F      = {res}  0.0000
{txt}Total (centered) SS     = {res} 129.0429927{txt}{col 55}Centered R2   = {res}  0.1685
{txt}Total (uncentered) SS   = {res} 129.0429927{txt}{col 55}Uncentered R2 = {res}  0.1685
{txt}Residual SS             = {res} 107.2949985{txt}{col 55}Root MSE      = {res}   .2452

{txt}{hline 13}{c TT}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{col 14}{c |}{col 26}    Robust
{col 1}     d_lnGDP{col 14}{c |} Coefficient{col 26}  std. err.{col 38}      t{col 46}   P>|t|{col 54}     [95% con{col 67}f. interval]
{hline 13}{c +}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{space 5}d_Grain {c |}{col 14}{res}{space 2}-.0634876{col 26}{space 2} .0128041{col 37}{space 1}   -4.96{col 46}{space 3}0.000{col 54}{space 4}-.0886941{col 67}{space 3} -.038281
{txt}{space 1}lnGDP_pc_03 {c |}{col 14}{res}{space 2}-.2864744{col 26}{space 2} .0239276{col 37}{space 1}  -11.97{col 46}{space 3}0.000{col 54}{space 4} -.333579{col 67}{space 3}-.2393698
{txt}{space 5}d_lnpop {c |}{col 14}{res}{space 2} .6995683{col 26}{space 2} .0817029{col 37}{space 1}    8.56{col 46}{space 3}0.000{col 54}{space 4} .5387257{col 67}{space 3} .8604109
{txt}{hline 13}{c BT}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{help ivreg2##idtest:Underidentification test} (Kleibergen-Paap rk LM statistic):{res}{col 71}  31.858
{txt}{col 52}Chi-sq({res}1{txt}) P-val =  {res}{col 73}0.0000
{txt}{hline 78}
{help ivreg2##widtest:Weak identification test} (Cragg-Donald Wald F statistic):{res}{col 71} 573.734
{txt}                         (Kleibergen-Paap rk Wald F statistic):{res}{col 71}  63.123
{txt}Stock-Yogo weak ID test critical values:{res}{txt}{col 42}10% maximal IV size{res}{col 73} 16.38
{txt}{col 42}15% maximal IV size{res}{col 73}  8.96
{txt}{col 42}20% maximal IV size{res}{col 73}  6.66
{txt}{col 42}25% maximal IV size{res}{col 73}  5.53
{txt}Source: Stock-Yogo (2005).  Reproduced by permission.
NB: Critical values are for Cragg-Donald F statistic and i.i.d. errors.
{hline 78}
{help ivreg2##overidtests:Hansen J statistic} (overidentification test of all instruments):{res}{col 71}   0.000
{txt}{col 50}(equation exactly identified)
{hline 78}
Instrumented:{col 23}d_Grain
Included instruments:{col 23}lnGDP_pc_03 d_lnpop
Excluded instruments:{col 23}dsim_Grain
{help ivreg2##partial:Partialled-out}:{col 23}_cons
{col 23}nb: total SS, model F and R2s are after partialling-out;
{col 23}    any {help ivreg2##s_small:small-sample adjustments} include partialled-out
{col 23}    variables in regressor count K
{hline 78}
{res}
{txt}Absorbed degrees of freedom:
{res}{col 1}{text}{hline 13}{c TT}{hline 12}{hline 12}{hline 14}{hline 1}{c TRC}
{col 1}{text} Absorbed FE{col 14}{c |} Categories{col 27} - Redundant{col 39}  = Num. Coefs{col 54}{c |}
{res}{col 1}{text}{hline 13}{c +}{hline 12}{hline 12}{hline 14}{hline 1}{c RT}
{col 1}{text}     city_id{col 14}{c |}{space 1}      276{col 27}{space 1}      276{col 39}{result}{space 1}        0{col 53}{text}*{col 54}{c |}
{res}{col 1}{text}{hline 13}{c BT}{hline 12}{hline 12}{hline 14}{hline 1}{c BRC}
* = FE nested within cluster; treated as redundant for DoF computation
{res}{txt}
{com}.         
.         outreg2 using "$logfiles/table_V3", ctitle("Pop") addtext(Controls, Y, City FE, Y)  append excel nocons nor2 depvar dec(3) keep(d_Grain) addstat(K-P Wald F, e(rkf)) adec(3)
{txt}{browse `"E:\2024-00768_数据\2024-00768+日志文件/table_V3.xml"'}
{browse `"E:\2024-00768_数据"' :dir}{com} : {txt}{stata `"seeout using "E:\2024-00768_数据\2024-00768+日志文件/table_V3.txt""':seeout}

{com}.         
.         
.                 
. 
. *******************************************************************************
. ********************** 表V4.对增产影响的替代性假说 *****************************
. *******************************************************************************
. 
.         use $working_data\county_panel.dta ,clear
{txt}
{com}.         
.         
.                                                 ***--- 变量处理 ---***      
.         
.         * 生成基期(2003)值
.         gen is_yr2003 = 1 if year==2003
{txt}(58,333 missing values generated)

{com}. 
.         foreach v of varlist Grain lnGDP_pc lnGDP Meat Oil confucious_temple soe_empshare{c -(}
{txt}  2{com}.                 
.                 bysort county_id (year): egen `v'_03 = mean(`v'*is_yr2003)
{txt}  3{com}.                 
.         {c )-}
{txt}(8,523 missing values generated)
(11,649 missing values generated)
(9,878 missing values generated)
(10,386 missing values generated)
(9,811 missing values generated)
(558 missing values generated)
(11,371 missing values generated)

{com}.         
.         foreach v of varlist Grain lnGDP_pc lnGDP Meat Oil{c -(}
{txt}  2{com}.                 
.                 gen d_`v' = `v' - `v'_03
{txt}  3{com}.                 
.         {c )-}
{txt}(13,008 missing values generated)
(16,346 missing values generated)
(12,277 missing values generated)
(16,617 missing values generated)
(12,626 missing values generated)

{com}. 
.         
.                 
.                                                 ***--- 回归结果 ---***      
.                 
.                 
.         * (1).2001年县平均关税
.         
.         ivreghdfe d_lnGDP_pc tarif_shock lnGDP_pc_03 (d_Grain = dsim_Grain) if year==2016, absorb(city_id) cluster(city_id)
{res}{txt}(dropped 18 {browse "http://scorreia.com/research/singletons.pdf":singleton observations})
{res}{txt}({browse "http://scorreia.com/research/hdfe.pdf":MWFE estimator} converged in 1 iterations)
{res}
{txt}IV (2SLS) estimation
{hline 20}

Estimates efficient for homoskedasticity only
Statistics robust to heteroskedasticity and clustering on city_id

Number of clusters (city_id) = {col 33}{res}   228{txt}{col 55}Number of obs = {res}    1348
{txt}{col 55}F(  3,   227) = {res}   49.41
{txt}{col 55}Prob > F      = {res}  0.0000
{txt}Total (centered) SS     = {res} 91.58447987{txt}{col 55}Centered R2   = {res}  0.1896
{txt}Total (uncentered) SS   = {res} 91.58447987{txt}{col 55}Uncentered R2 = {res}  0.1896
{txt}Residual SS             = {res} 74.21970284{txt}{col 55}Root MSE      = {res}    .235

{txt}{hline 13}{c TT}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{col 14}{c |}{col 26}    Robust
{col 1}  d_lnGDP_pc{col 14}{c |} Coefficient{col 26}  std. err.{col 38}      t{col 46}   P>|t|{col 54}     [95% con{col 67}f. interval]
{hline 13}{c +}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{space 5}d_Grain {c |}{col 14}{res}{space 2}  -.06794{col 26}{space 2} .0150812{col 37}{space 1}   -4.50{col 46}{space 3}0.000{col 54}{space 4} -.097657{col 67}{space 3}-.0382231
{txt}{space 1}tarif_shock {c |}{col 14}{res}{space 2}-.0023228{col 26}{space 2} .0017301{col 37}{space 1}   -1.34{col 46}{space 3}0.181{col 54}{space 4}-.0057319{col 67}{space 3} .0010863
{txt}{space 1}lnGDP_pc_03 {c |}{col 14}{res}{space 2}-.3325324{col 26}{space 2}  .028917{col 37}{space 1}  -11.50{col 46}{space 3}0.000{col 54}{space 4}-.3895124{col 67}{space 3}-.2755524
{txt}{hline 13}{c BT}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{help ivreg2##idtest:Underidentification test} (Kleibergen-Paap rk LM statistic):{res}{col 71}  25.946
{txt}{col 52}Chi-sq({res}1{txt}) P-val =  {res}{col 73}0.0000
{txt}{hline 78}
{help ivreg2##widtest:Weak identification test} (Cragg-Donald Wald F statistic):{res}{col 71} 485.515
{txt}                         (Kleibergen-Paap rk Wald F statistic):{res}{col 71}  55.187
{txt}Stock-Yogo weak ID test critical values:{res}{txt}{col 42}10% maximal IV size{res}{col 73} 16.38
{txt}{col 42}15% maximal IV size{res}{col 73}  8.96
{txt}{col 42}20% maximal IV size{res}{col 73}  6.66
{txt}{col 42}25% maximal IV size{res}{col 73}  5.53
{txt}Source: Stock-Yogo (2005).  Reproduced by permission.
NB: Critical values are for Cragg-Donald F statistic and i.i.d. errors.
{hline 78}
{help ivreg2##overidtests:Hansen J statistic} (overidentification test of all instruments):{res}{col 71}   0.000
{txt}{col 50}(equation exactly identified)
{hline 78}
Instrumented:{col 23}d_Grain
Included instruments:{col 23}tarif_shock lnGDP_pc_03
Excluded instruments:{col 23}dsim_Grain
{help ivreg2##partial:Partialled-out}:{col 23}_cons
{col 23}nb: total SS, model F and R2s are after partialling-out;
{col 23}    any {help ivreg2##s_small:small-sample adjustments} include partialled-out
{col 23}    variables in regressor count K
{hline 78}
{res}
{txt}Absorbed degrees of freedom:
{res}{col 1}{text}{hline 13}{c TT}{hline 12}{hline 12}{hline 14}{hline 1}{c TRC}
{col 1}{text} Absorbed FE{col 14}{c |} Categories{col 27} - Redundant{col 39}  = Num. Coefs{col 54}{c |}
{res}{col 1}{text}{hline 13}{c +}{hline 12}{hline 12}{hline 14}{hline 1}{c RT}
{col 1}{text}     city_id{col 14}{c |}{space 1}      228{col 27}{space 1}      228{col 39}{result}{space 1}        0{col 53}{text}*{col 54}{c |}
{res}{col 1}{text}{hline 13}{c BT}{hline 12}{hline 12}{hline 14}{hline 1}{c BRC}
* = FE nested within cluster; treated as redundant for DoF computation
{res}{txt}
{com}.         
.         outreg2 using "$logfiles/table_V4", ctitle("trade:initial tariff") addtext(Controls, Y, City FE, Y) replace excel nocons nor2 depvar addstat(K-P Wald F, e(rkf)) adec(3) dec(3) keep(d_Grain)
{txt}{browse `"E:\2024-00768_数据\2024-00768+日志文件/table_V4.xml"'}
{browse `"E:\2024-00768_数据"' :dir}{com} : {txt}{stata `"seeout using "E:\2024-00768_数据\2024-00768+日志文件/table_V4.txt""':seeout}

{com}.         
.         * (2). IV构建去除大豆
.         
.         ivreghdfe d_lnGDP_pc lnGDP_pc_03 (d_Grain = dsim_Grain_nosy) if year==2016, absorb(city_id) cluster(city_id)
{res}{txt}(dropped 11 {browse "http://scorreia.com/research/singletons.pdf":singleton observations})
{res}{txt}({browse "http://scorreia.com/research/hdfe.pdf":MWFE estimator} converged in 1 iterations)
{res}
{txt}IV (2SLS) estimation
{hline 20}

Estimates efficient for homoskedasticity only
Statistics robust to heteroskedasticity and clustering on city_id

Number of clusters (city_id) = {col 33}{res}   276{txt}{col 55}Number of obs = {res}    1789
{txt}{col 55}F(  2,   275) = {res}   81.91
{txt}{col 55}Prob > F      = {res}  0.0000
{txt}Total (centered) SS     = {res} 129.3586903{txt}{col 55}Centered R2   = {res}  0.1595
{txt}Total (uncentered) SS   = {res} 129.3586903{txt}{col 55}Uncentered R2 = {res}  0.1595
{txt}Residual SS             = {res} 108.7314247{txt}{col 55}Root MSE      = {res}   .2467

{txt}{hline 13}{c TT}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{col 14}{c |}{col 26}    Robust
{col 1}  d_lnGDP_pc{col 14}{c |} Coefficient{col 26}  std. err.{col 38}      t{col 46}   P>|t|{col 54}     [95% con{col 67}f. interval]
{hline 13}{c +}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{space 5}d_Grain {c |}{col 14}{res}{space 2}-.0585732{col 26}{space 2}  .012968{col 37}{space 1}   -4.52{col 46}{space 3}0.000{col 54}{space 4}-.0841024{col 67}{space 3} -.033044
{txt}{space 1}lnGDP_pc_03 {c |}{col 14}{res}{space 2}-.3045081{col 26}{space 2} .0243288{col 37}{space 1}  -12.52{col 46}{space 3}0.000{col 54}{space 4}-.3524024{col 67}{space 3}-.2566138
{txt}{hline 13}{c BT}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{help ivreg2##idtest:Underidentification test} (Kleibergen-Paap rk LM statistic):{res}{col 71}  31.466
{txt}{col 52}Chi-sq({res}1{txt}) P-val =  {res}{col 73}0.0000
{txt}{hline 78}
{help ivreg2##widtest:Weak identification test} (Cragg-Donald Wald F statistic):{res}{col 71} 577.401
{txt}                         (Kleibergen-Paap rk Wald F statistic):{res}{col 71}  62.473
{txt}Stock-Yogo weak ID test critical values:{res}{txt}{col 42}10% maximal IV size{res}{col 73} 16.38
{txt}{col 42}15% maximal IV size{res}{col 73}  8.96
{txt}{col 42}20% maximal IV size{res}{col 73}  6.66
{txt}{col 42}25% maximal IV size{res}{col 73}  5.53
{txt}Source: Stock-Yogo (2005).  Reproduced by permission.
NB: Critical values are for Cragg-Donald F statistic and i.i.d. errors.
{hline 78}
{help ivreg2##overidtests:Hansen J statistic} (overidentification test of all instruments):{res}{col 71}   0.000
{txt}{col 50}(equation exactly identified)
{hline 78}
Instrumented:{col 23}d_Grain
Included instruments:{col 23}lnGDP_pc_03
Excluded instruments:{col 23}dsim_Grain_nosy
{help ivreg2##partial:Partialled-out}:{col 23}_cons
{col 23}nb: total SS, model F and R2s are after partialling-out;
{col 23}    any {help ivreg2##s_small:small-sample adjustments} include partialled-out
{col 23}    variables in regressor count K
{hline 78}
{res}
{txt}Absorbed degrees of freedom:
{res}{col 1}{text}{hline 13}{c TT}{hline 12}{hline 12}{hline 14}{hline 1}{c TRC}
{col 1}{text} Absorbed FE{col 14}{c |} Categories{col 27} - Redundant{col 39}  = Num. Coefs{col 54}{c |}
{res}{col 1}{text}{hline 13}{c +}{hline 12}{hline 12}{hline 14}{hline 1}{c RT}
{col 1}{text}     city_id{col 14}{c |}{space 1}      276{col 27}{space 1}      276{col 39}{result}{space 1}        0{col 53}{text}*{col 54}{c |}
{res}{col 1}{text}{hline 13}{c BT}{hline 12}{hline 12}{hline 14}{hline 1}{c BRC}
* = FE nested within cluster; treated as redundant for DoF computation
{res}{txt}
{com}.         
.         outreg2 using "$logfiles/table_V4", ctitle("trade:no soybeans") addtext(Controls, Y, City FE, Y) append excel nocons nor2 depvar addstat(K-P Wald F, e(rkf)) adec(3) dec(3) keep(d_Grain)
{txt}{browse `"E:\2024-00768_数据\2024-00768+日志文件/table_V4.xml"'}
{browse `"E:\2024-00768_数据"' :dir}{com} : {txt}{stata `"seeout using "E:\2024-00768_数据\2024-00768+日志文件/table_V4.txt""':seeout}

{com}. 
.         
.         * (3). 控制油料和肉类生产
.         
.         ivreghdfe d_lnGDP_pc d_Meat d_Oil lnGDP_pc_03 (d_Grain = dsim_Grain) if year==2016, absorb(city_id) cluster(city_id)
{res}{txt}(dropped 16 {browse "http://scorreia.com/research/singletons.pdf":singleton observations})
{res}{txt}({browse "http://scorreia.com/research/hdfe.pdf":MWFE estimator} converged in 1 iterations)
{res}
{txt}IV (2SLS) estimation
{hline 20}

Estimates efficient for homoskedasticity only
Statistics robust to heteroskedasticity and clustering on city_id

Number of clusters (city_id) = {col 33}{res}   267{txt}{col 55}Number of obs = {res}    1663
{txt}{col 55}F(  4,   266) = {res}   31.50
{txt}{col 55}Prob > F      = {res}  0.0000
{txt}Total (centered) SS     = {res} 100.4524946{txt}{col 55}Centered R2   = {res}  0.1370
{txt}Total (uncentered) SS   = {res} 100.4524946{txt}{col 55}Uncentered R2 = {res}  0.1370
{txt}Residual SS             = {res} 86.68576427{txt}{col 55}Root MSE      = {res}   .2287

{txt}{hline 13}{c TT}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{col 14}{c |}{col 26}    Robust
{col 1}  d_lnGDP_pc{col 14}{c |} Coefficient{col 26}  std. err.{col 38}      t{col 46}   P>|t|{col 54}     [95% con{col 67}f. interval]
{hline 13}{c +}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{space 5}d_Grain {c |}{col 14}{res}{space 2}-.0465303{col 26}{space 2} .0121725{col 37}{space 1}   -3.82{col 46}{space 3}0.000{col 54}{space 4} -.070497{col 67}{space 3}-.0225635
{txt}{space 6}d_Meat {c |}{col 14}{res}{space 2} 4.36e-07{col 26}{space 2} 2.35e-07{col 37}{space 1}    1.85{col 46}{space 3}0.065{col 54}{space 4}-2.74e-08{col 67}{space 3} 8.99e-07
{txt}{space 7}d_Oil {c |}{col 14}{res}{space 2} 6.35e-09{col 26}{space 2} 4.16e-07{col 37}{space 1}    0.02{col 46}{space 3}0.988{col 54}{space 4}-8.13e-07{col 67}{space 3} 8.26e-07
{txt}{space 1}lnGDP_pc_03 {c |}{col 14}{res}{space 2}-.2635077{col 26}{space 2} .0237667{col 37}{space 1}  -11.09{col 46}{space 3}0.000{col 54}{space 4}-.3103025{col 67}{space 3}-.2167128
{txt}{hline 13}{c BT}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{help ivreg2##idtest:Underidentification test} (Kleibergen-Paap rk LM statistic):{res}{col 71}  25.487
{txt}{col 52}Chi-sq({res}1{txt}) P-val =  {res}{col 73}0.0000
{txt}{hline 78}
{help ivreg2##widtest:Weak identification test} (Cragg-Donald Wald F statistic):{res}{col 71} 485.418
{txt}                         (Kleibergen-Paap rk Wald F statistic):{res}{col 71}  53.577
{txt}Stock-Yogo weak ID test critical values:{res}{txt}{col 42}10% maximal IV size{res}{col 73} 16.38
{txt}{col 42}15% maximal IV size{res}{col 73}  8.96
{txt}{col 42}20% maximal IV size{res}{col 73}  6.66
{txt}{col 42}25% maximal IV size{res}{col 73}  5.53
{txt}Source: Stock-Yogo (2005).  Reproduced by permission.
NB: Critical values are for Cragg-Donald F statistic and i.i.d. errors.
{hline 78}
{help ivreg2##overidtests:Hansen J statistic} (overidentification test of all instruments):{res}{col 71}   0.000
{txt}{col 50}(equation exactly identified)
{hline 78}
Instrumented:{col 23}d_Grain
Included instruments:{col 23}d_Meat d_Oil lnGDP_pc_03
Excluded instruments:{col 23}dsim_Grain
{help ivreg2##partial:Partialled-out}:{col 23}_cons
{col 23}nb: total SS, model F and R2s are after partialling-out;
{col 23}    any {help ivreg2##s_small:small-sample adjustments} include partialled-out
{col 23}    variables in regressor count K
{hline 78}
{res}
{txt}Absorbed degrees of freedom:
{res}{col 1}{text}{hline 13}{c TT}{hline 12}{hline 12}{hline 14}{hline 1}{c TRC}
{col 1}{text} Absorbed FE{col 14}{c |} Categories{col 27} - Redundant{col 39}  = Num. Coefs{col 54}{c |}
{res}{col 1}{text}{hline 13}{c +}{hline 12}{hline 12}{hline 14}{hline 1}{c RT}
{col 1}{text}     city_id{col 14}{c |}{space 1}      267{col 27}{space 1}      267{col 39}{result}{space 1}        0{col 53}{text}*{col 54}{c |}
{res}{col 1}{text}{hline 13}{c BT}{hline 12}{hline 12}{hline 14}{hline 1}{c BRC}
* = FE nested within cluster; treated as redundant for DoF computation
{res}{txt}
{com}.         
.         outreg2 using "$logfiles/table_V4", ctitle("other agr. products") addtext(Controls, Y, City FE, Y) append excel nocons nor2 depvar addstat(K-P Wald F, e(rkf)) adec(3) dec(3) keep(d_Grain)
{txt}{browse `"E:\2024-00768_数据\2024-00768+日志文件/table_V4.xml"'}
{browse `"E:\2024-00768_数据"' :dir}{com} : {txt}{stata `"seeout using "E:\2024-00768_数据\2024-00768+日志文件/table_V4.txt""':seeout}

{com}.         
.         
.         * (4). 稻作文化: GAEZ的水稻潜在单产
.         
.         ivreghdfe d_lnGDP_pc potyield_rice lnGDP_pc_03 (d_Grain = dsim_Grain) if year==2016,absorb(city_id) cluster(city_id)
{res}{txt}(dropped 11 {browse "http://scorreia.com/research/singletons.pdf":singleton observations})
{res}{txt}({browse "http://scorreia.com/research/hdfe.pdf":MWFE estimator} converged in 1 iterations)
{res}
{txt}IV (2SLS) estimation
{hline 20}

Estimates efficient for homoskedasticity only
Statistics robust to heteroskedasticity and clustering on city_id

Number of clusters (city_id) = {col 33}{res}   276{txt}{col 55}Number of obs = {res}    1789
{txt}{col 55}F(  3,   275) = {res}   54.23
{txt}{col 55}Prob > F      = {res}  0.0000
{txt}Total (centered) SS     = {res} 129.3586903{txt}{col 55}Centered R2   = {res}  0.1577
{txt}Total (uncentered) SS   = {res} 129.3586903{txt}{col 55}Uncentered R2 = {res}  0.1577
{txt}Residual SS             = {res}   108.95772{txt}{col 55}Root MSE      = {res}   .2471

{txt}{hline 14}{c TT}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{col 15}{c |}{col 27}    Robust
{col 1}   d_lnGDP_pc{col 15}{c |} Coefficient{col 27}  std. err.{col 39}      t{col 47}   P>|t|{col 55}     [95% con{col 68}f. interval]
{hline 14}{c +}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{space 6}d_Grain {c |}{col 15}{res}{space 2}-.0603935{col 27}{space 2} .0127281{col 38}{space 1}   -4.74{col 47}{space 3}0.000{col 55}{space 4}-.0854504{col 68}{space 3}-.0353366
{txt}potyield_rice {c |}{col 15}{res}{space 2} .0000136{col 27}{space 2}  .000031{col 38}{space 1}    0.44{col 47}{space 3}0.661{col 55}{space 4}-.0000474{col 68}{space 3} .0000746
{txt}{space 2}lnGDP_pc_03 {c |}{col 15}{res}{space 2}-.3067467{col 27}{space 2} .0251772{col 38}{space 1}  -12.18{col 47}{space 3}0.000{col 55}{space 4}-.3563112{col 68}{space 3}-.2571821
{txt}{hline 14}{c BT}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{help ivreg2##idtest:Underidentification test} (Kleibergen-Paap rk LM statistic):{res}{col 71}  32.225
{txt}{col 52}Chi-sq({res}1{txt}) P-val =  {res}{col 73}0.0000
{txt}{hline 78}
{help ivreg2##widtest:Weak identification test} (Cragg-Donald Wald F statistic):{res}{col 71} 585.573
{txt}                         (Kleibergen-Paap rk Wald F statistic):{res}{col 71}  64.439
{txt}Stock-Yogo weak ID test critical values:{res}{txt}{col 42}10% maximal IV size{res}{col 73} 16.38
{txt}{col 42}15% maximal IV size{res}{col 73}  8.96
{txt}{col 42}20% maximal IV size{res}{col 73}  6.66
{txt}{col 42}25% maximal IV size{res}{col 73}  5.53
{txt}Source: Stock-Yogo (2005).  Reproduced by permission.
NB: Critical values are for Cragg-Donald F statistic and i.i.d. errors.
{hline 78}
{help ivreg2##overidtests:Hansen J statistic} (overidentification test of all instruments):{res}{col 71}   0.000
{txt}{col 50}(equation exactly identified)
{hline 78}
Instrumented:{col 23}d_Grain
Included instruments:{col 23}potyield_rice lnGDP_pc_03
Excluded instruments:{col 23}dsim_Grain
{help ivreg2##partial:Partialled-out}:{col 23}_cons
{col 23}nb: total SS, model F and R2s are after partialling-out;
{col 23}    any {help ivreg2##s_small:small-sample adjustments} include partialled-out
{col 23}    variables in regressor count K
{hline 78}
{res}
{txt}Absorbed degrees of freedom:
{res}{col 1}{text}{hline 13}{c TT}{hline 12}{hline 12}{hline 14}{hline 1}{c TRC}
{col 1}{text} Absorbed FE{col 14}{c |} Categories{col 27} - Redundant{col 39}  = Num. Coefs{col 54}{c |}
{res}{col 1}{text}{hline 13}{c +}{hline 12}{hline 12}{hline 14}{hline 1}{c RT}
{col 1}{text}     city_id{col 14}{c |}{space 1}      276{col 27}{space 1}      276{col 39}{result}{space 1}        0{col 53}{text}*{col 54}{c |}
{res}{col 1}{text}{hline 13}{c BT}{hline 12}{hline 12}{hline 14}{hline 1}{c BRC}
* = FE nested within cluster; treated as redundant for DoF computation
{res}{txt}
{com}.         
.         outreg2 using "$logfiles/table_V4", ctitle("Rice-farming") addtext(Controls, Y, City FE, Y) append excel nocons  nor2 depvar addstat(K-P Wald F, e(rkf)) adec(3) dec(3) keep(d_Grain)
{txt}{browse `"E:\2024-00768_数据\2024-00768+日志文件/table_V4.xml"'}
{browse `"E:\2024-00768_数据"' :dir}{com} : {txt}{stata `"seeout using "E:\2024-00768_数据\2024-00768+日志文件/table_V4.txt""':seeout}

{com}.         
.         
.         * (5). 儒家文化
.         
.         ivreghdfe d_lnGDP_pc confucious_temple_03 lnGDP_pc_03 (d_Grain = dsim_Grain) if year==2016,absorb(city_id) cluster(city_id)
{res}{txt}(dropped 11 {browse "http://scorreia.com/research/singletons.pdf":singleton observations})
{res}{txt}({browse "http://scorreia.com/research/hdfe.pdf":MWFE estimator} converged in 1 iterations)
{res}
{txt}IV (2SLS) estimation
{hline 20}

Estimates efficient for homoskedasticity only
Statistics robust to heteroskedasticity and clustering on city_id

Number of clusters (city_id) = {col 33}{res}   276{txt}{col 55}Number of obs = {res}    1789
{txt}{col 55}F(  3,   275) = {res}   58.10
{txt}{col 55}Prob > F      = {res}  0.0000
{txt}Total (centered) SS     = {res} 129.3586903{txt}{col 55}Centered R2   = {res}  0.1635
{txt}Total (uncentered) SS   = {res} 129.3586903{txt}{col 55}Uncentered R2 = {res}  0.1635
{txt}Residual SS             = {res} 108.2075408{txt}{col 55}Root MSE      = {res}   .2462

{txt}{hline 21}{c TT}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{col 22}{c |}{col 34}    Robust
{col 1}          d_lnGDP_pc{col 22}{c |} Coefficient{col 34}  std. err.{col 46}      t{col 54}   P>|t|{col 62}     [95% con{col 75}f. interval]
{hline 21}{c +}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{space 13}d_Grain {c |}{col 22}{res}{space 2}-.0569565{col 34}{space 2} .0127335{col 45}{space 1}   -4.47{col 54}{space 3}0.000{col 62}{space 4}-.0820239{col 75}{space 3} -.031889
{txt}confucious_temple_03 {c |}{col 22}{res}{space 2}-.0377695{col 34}{space 2}  .014249{col 45}{space 1}   -2.65{col 54}{space 3}0.008{col 62}{space 4}-.0658205{col 75}{space 3}-.0097185
{txt}{space 9}lnGDP_pc_03 {c |}{col 22}{res}{space 2}-.3018144{col 34}{space 2} .0242446{col 45}{space 1}  -12.45{col 54}{space 3}0.000{col 62}{space 4}-.3495429{col 75}{space 3}-.2540859
{txt}{hline 21}{c BT}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{help ivreg2##idtest:Underidentification test} (Kleibergen-Paap rk LM statistic):{res}{col 71}  31.787
{txt}{col 52}Chi-sq({res}1{txt}) P-val =  {res}{col 73}0.0000
{txt}{hline 78}
{help ivreg2##widtest:Weak identification test} (Cragg-Donald Wald F statistic):{res}{col 71} 569.642
{txt}                         (Kleibergen-Paap rk Wald F statistic):{res}{col 71}  62.622
{txt}Stock-Yogo weak ID test critical values:{res}{txt}{col 42}10% maximal IV size{res}{col 73} 16.38
{txt}{col 42}15% maximal IV size{res}{col 73}  8.96
{txt}{col 42}20% maximal IV size{res}{col 73}  6.66
{txt}{col 42}25% maximal IV size{res}{col 73}  5.53
{txt}Source: Stock-Yogo (2005).  Reproduced by permission.
NB: Critical values are for Cragg-Donald F statistic and i.i.d. errors.
{hline 78}
{help ivreg2##overidtests:Hansen J statistic} (overidentification test of all instruments):{res}{col 71}   0.000
{txt}{col 50}(equation exactly identified)
{hline 78}
Instrumented:{col 23}d_Grain
Included instruments:{col 23}confucious_temple_03 lnGDP_pc_03
Excluded instruments:{col 23}dsim_Grain
{help ivreg2##partial:Partialled-out}:{col 23}_cons
{col 23}nb: total SS, model F and R2s are after partialling-out;
{col 23}    any {help ivreg2##s_small:small-sample adjustments} include partialled-out
{col 23}    variables in regressor count K
{hline 78}
{res}
{txt}Absorbed degrees of freedom:
{res}{col 1}{text}{hline 13}{c TT}{hline 12}{hline 12}{hline 14}{hline 1}{c TRC}
{col 1}{text} Absorbed FE{col 14}{c |} Categories{col 27} - Redundant{col 39}  = Num. Coefs{col 54}{c |}
{res}{col 1}{text}{hline 13}{c +}{hline 12}{hline 12}{hline 14}{hline 1}{c RT}
{col 1}{text}     city_id{col 14}{c |}{space 1}      276{col 27}{space 1}      276{col 39}{result}{space 1}        0{col 53}{text}*{col 54}{c |}
{res}{col 1}{text}{hline 13}{c BT}{hline 12}{hline 12}{hline 14}{hline 1}{c BRC}
* = FE nested within cluster; treated as redundant for DoF computation
{res}{txt}
{com}.         
.         outreg2 using "$logfiles/table_V4", ctitle("Confucius") addtext(Controls, Y, City FE, Y) append excel nocons  nor2 depvar addstat(K-P Wald F, e(rkf)) adec(3) dec(3) keep(d_Grain)
{txt}{browse `"E:\2024-00768_数据\2024-00768+日志文件/table_V4.xml"'}
{browse `"E:\2024-00768_数据"' :dir}{com} : {txt}{stata `"seeout using "E:\2024-00768_数据\2024-00768+日志文件/table_V4.txt""':seeout}

{com}.         
.         
.         * (6). 市场化：控制期初国企占比
.         ivreghdfe d_lnGDP_pc soe_empshare_03 lnGDP_pc_03 (d_Grain = dsim_Grain) if year==2016,absorb(city_id) cluster(city_id)
{res}{txt}(dropped 18 {browse "http://scorreia.com/research/singletons.pdf":singleton observations})
{res}{txt}({browse "http://scorreia.com/research/hdfe.pdf":MWFE estimator} converged in 1 iterations)
{res}
{txt}IV (2SLS) estimation
{hline 20}

Estimates efficient for homoskedasticity only
Statistics robust to heteroskedasticity and clustering on city_id

Number of clusters (city_id) = {col 33}{res}   248{txt}{col 55}Number of obs = {res}    1499
{txt}{col 55}F(  3,   247) = {res}   49.91
{txt}{col 55}Prob > F      = {res}  0.0000
{txt}Total (centered) SS     = {res} 105.5061843{txt}{col 55}Centered R2   = {res}  0.1717
{txt}Total (uncentered) SS   = {res} 105.5061843{txt}{col 55}Uncentered R2 = {res}  0.1717
{txt}Residual SS             = {res}  87.3863087{txt}{col 55}Root MSE      = {res}   .2418

{txt}{hline 16}{c TT}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{col 17}{c |}{col 29}    Robust
{col 1}     d_lnGDP_pc{col 17}{c |} Coefficient{col 29}  std. err.{col 41}      t{col 49}   P>|t|{col 57}     [95% con{col 70}f. interval]
{hline 16}{c +}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{space 8}d_Grain {c |}{col 17}{res}{space 2}-.0587597{col 29}{space 2} .0135791{col 40}{space 1}   -4.33{col 49}{space 3}0.000{col 57}{space 4}-.0855053{col 70}{space 3}-.0320141
{txt}soe_empshare_03 {c |}{col 17}{res}{space 2} .0003469{col 29}{space 2}  .000369{col 40}{space 1}    0.94{col 49}{space 3}0.348{col 57}{space 4}-.0003798{col 70}{space 3} .0010736
{txt}{space 4}lnGDP_pc_03 {c |}{col 17}{res}{space 2}-.3142738{col 29}{space 2} .0268619{col 40}{space 1}  -11.70{col 49}{space 3}0.000{col 57}{space 4}-.3671815{col 70}{space 3}-.2613661
{txt}{hline 16}{c BT}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{help ivreg2##idtest:Underidentification test} (Kleibergen-Paap rk LM statistic):{res}{col 71}  28.086
{txt}{col 52}Chi-sq({res}1{txt}) P-val =  {res}{col 73}0.0000
{txt}{hline 78}
{help ivreg2##widtest:Weak identification test} (Cragg-Donald Wald F statistic):{res}{col 71} 489.696
{txt}                         (Kleibergen-Paap rk Wald F statistic):{res}{col 71}  54.926
{txt}Stock-Yogo weak ID test critical values:{res}{txt}{col 42}10% maximal IV size{res}{col 73} 16.38
{txt}{col 42}15% maximal IV size{res}{col 73}  8.96
{txt}{col 42}20% maximal IV size{res}{col 73}  6.66
{txt}{col 42}25% maximal IV size{res}{col 73}  5.53
{txt}Source: Stock-Yogo (2005).  Reproduced by permission.
NB: Critical values are for Cragg-Donald F statistic and i.i.d. errors.
{hline 78}
{help ivreg2##overidtests:Hansen J statistic} (overidentification test of all instruments):{res}{col 71}   0.000
{txt}{col 50}(equation exactly identified)
{hline 78}
Instrumented:{col 23}d_Grain
Included instruments:{col 23}soe_empshare_03 lnGDP_pc_03
Excluded instruments:{col 23}dsim_Grain
{help ivreg2##partial:Partialled-out}:{col 23}_cons
{col 23}nb: total SS, model F and R2s are after partialling-out;
{col 23}    any {help ivreg2##s_small:small-sample adjustments} include partialled-out
{col 23}    variables in regressor count K
{hline 78}
{res}
{txt}Absorbed degrees of freedom:
{res}{col 1}{text}{hline 13}{c TT}{hline 12}{hline 12}{hline 14}{hline 1}{c TRC}
{col 1}{text} Absorbed FE{col 14}{c |} Categories{col 27} - Redundant{col 39}  = Num. Coefs{col 54}{c |}
{res}{col 1}{text}{hline 13}{c +}{hline 12}{hline 12}{hline 14}{hline 1}{c RT}
{col 1}{text}     city_id{col 14}{c |}{space 1}      248{col 27}{space 1}      248{col 39}{result}{space 1}        0{col 53}{text}*{col 54}{c |}
{res}{col 1}{text}{hline 13}{c BT}{hline 12}{hline 12}{hline 14}{hline 1}{c BRC}
* = FE nested within cluster; treated as redundant for DoF computation
{res}{txt}
{com}.         outreg2 using "$logfiles/table_V4", ctitle("SOE share") addtext(Controls, Y, City FE, Y) append excel nocons  nor2 depvar addstat(K-P Wald F, e(rkf)) adec(3) dec(3) keep(d_Grain)                      
{txt}{browse `"E:\2024-00768_数据\2024-00768+日志文件/table_V4.xml"'}
{browse `"E:\2024-00768_数据"' :dir}{com} : {txt}{stata `"seeout using "E:\2024-00768_数据\2024-00768+日志文件/table_V4.txt""':seeout}

{com}.                 
.                                 
.         * (7): 去掉东北地区县
.         
.         ivreghdfe d_lnGDP_pc lnGDP_pc_03 (d_Grain = dsim_Grain) if year==2016&region_noreast==0, absorb(city_id) cluster(city_id)
{res}{txt}(dropped 10 {browse "http://scorreia.com/research/singletons.pdf":singleton observations})
{res}{txt}({browse "http://scorreia.com/research/hdfe.pdf":MWFE estimator} converged in 1 iterations)
{res}
{txt}IV (2SLS) estimation
{hline 20}

Estimates efficient for homoskedasticity only
Statistics robust to heteroskedasticity and clustering on city_id

Number of clusters (city_id) = {col 33}{res}   229{txt}{col 55}Number of obs = {res}    1527
{txt}{col 55}F(  2,   228) = {res}   65.24
{txt}{col 55}Prob > F      = {res}  0.0000
{txt}Total (centered) SS     = {res} 98.53044872{txt}{col 55}Centered R2   = {res}  0.1541
{txt}Total (uncentered) SS   = {res} 98.53044872{txt}{col 55}Uncentered R2 = {res}  0.1541
{txt}Residual SS             = {res}  83.3475556{txt}{col 55}Root MSE      = {res}   .2339

{txt}{hline 13}{c TT}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{col 14}{c |}{col 26}    Robust
{col 1}  d_lnGDP_pc{col 14}{c |} Coefficient{col 26}  std. err.{col 38}      t{col 46}   P>|t|{col 54}     [95% con{col 67}f. interval]
{hline 13}{c +}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{space 5}d_Grain {c |}{col 14}{res}{space 2}-.0563059{col 26}{space 2} .0194878{col 37}{space 1}   -2.89{col 46}{space 3}0.004{col 54}{space 4}-.0947051{col 67}{space 3}-.0179067
{txt}{space 1}lnGDP_pc_03 {c |}{col 14}{res}{space 2}-.2709592{col 26}{space 2} .0237504{col 37}{space 1}  -11.41{col 46}{space 3}0.000{col 54}{space 4}-.3177575{col 67}{space 3}-.2241609
{txt}{hline 13}{c BT}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{help ivreg2##idtest:Underidentification test} (Kleibergen-Paap rk LM statistic):{res}{col 71}  27.444
{txt}{col 52}Chi-sq({res}1{txt}) P-val =  {res}{col 73}0.0000
{txt}{hline 78}
{help ivreg2##widtest:Weak identification test} (Cragg-Donald Wald F statistic):{res}{col 71} 405.314
{txt}                         (Kleibergen-Paap rk Wald F statistic):{res}{col 71}  56.770
{txt}Stock-Yogo weak ID test critical values:{res}{txt}{col 42}10% maximal IV size{res}{col 73} 16.38
{txt}{col 42}15% maximal IV size{res}{col 73}  8.96
{txt}{col 42}20% maximal IV size{res}{col 73}  6.66
{txt}{col 42}25% maximal IV size{res}{col 73}  5.53
{txt}Source: Stock-Yogo (2005).  Reproduced by permission.
NB: Critical values are for Cragg-Donald F statistic and i.i.d. errors.
{hline 78}
{help ivreg2##overidtests:Hansen J statistic} (overidentification test of all instruments):{res}{col 71}   0.000
{txt}{col 50}(equation exactly identified)
{hline 78}
Instrumented:{col 23}d_Grain
Included instruments:{col 23}lnGDP_pc_03
Excluded instruments:{col 23}dsim_Grain
{help ivreg2##partial:Partialled-out}:{col 23}_cons
{col 23}nb: total SS, model F and R2s are after partialling-out;
{col 23}    any {help ivreg2##s_small:small-sample adjustments} include partialled-out
{col 23}    variables in regressor count K
{hline 78}
{res}
{txt}Absorbed degrees of freedom:
{res}{col 1}{text}{hline 13}{c TT}{hline 12}{hline 12}{hline 14}{hline 1}{c TRC}
{col 1}{text} Absorbed FE{col 14}{c |} Categories{col 27} - Redundant{col 39}  = Num. Coefs{col 54}{c |}
{res}{col 1}{text}{hline 13}{c +}{hline 12}{hline 12}{hline 14}{hline 1}{c RT}
{col 1}{text}     city_id{col 14}{c |}{space 1}      229{col 27}{space 1}      229{col 39}{result}{space 1}        0{col 53}{text}*{col 54}{c |}
{res}{col 1}{text}{hline 13}{c BT}{hline 12}{hline 12}{hline 14}{hline 1}{c BRC}
* = FE nested within cluster; treated as redundant for DoF computation
{res}{txt}
{com}.         
.         outreg2 using "$logfiles/table_V4", ctitle("no northeastern") addtext(Controls, Y, City FE, Y) append excel nocons nor2 depvar addstat(K-P Wald F, e(rkf)) adec(3) dec(3) keep(d_Grain)
{txt}{browse `"E:\2024-00768_数据\2024-00768+日志文件/table_V4.xml"'}
{browse `"E:\2024-00768_数据"' :dir}{com} : {txt}{stata `"seeout using "E:\2024-00768_数据\2024-00768+日志文件/table_V4.txt""':seeout}

{com}.                 
.         
.         * (8). 去掉沿海县
.         
.         ivreghdfe d_lnGDP_pc lnGDP_pc_03 (d_Grain = dsim_Grain) if year==2016&is_coastal==0, absorb(city_id) cluster(city_id)
{res}{txt}(dropped 14 {browse "http://scorreia.com/research/singletons.pdf":singleton observations})
{res}{txt}({browse "http://scorreia.com/research/hdfe.pdf":MWFE estimator} converged in 1 iterations)
{res}
{txt}IV (2SLS) estimation
{hline 20}

Estimates efficient for homoskedasticity only
Statistics robust to heteroskedasticity and clustering on city_id

Number of clusters (city_id) = {col 33}{res}   265{txt}{col 55}Number of obs = {res}    1691
{txt}{col 55}F(  2,   264) = {res}   78.83
{txt}{col 55}Prob > F      = {res}  0.0000
{txt}Total (centered) SS     = {res} 122.7018713{txt}{col 55}Centered R2   = {res}  0.1713
{txt}Total (uncentered) SS   = {res} 122.7018713{txt}{col 55}Uncentered R2 = {res}  0.1713
{txt}Residual SS             = {res}  101.680879{txt}{col 55}Root MSE      = {res}   .2454

{txt}{hline 13}{c TT}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{col 14}{c |}{col 26}    Robust
{col 1}  d_lnGDP_pc{col 14}{c |} Coefficient{col 26}  std. err.{col 38}      t{col 46}   P>|t|{col 54}     [95% con{col 67}f. interval]
{hline 13}{c +}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{space 5}d_Grain {c |}{col 14}{res}{space 2}-.0517439{col 26}{space 2} .0125904{col 37}{space 1}   -4.11{col 46}{space 3}0.000{col 54}{space 4}-.0765343{col 67}{space 3}-.0269535
{txt}{space 1}lnGDP_pc_03 {c |}{col 14}{res}{space 2}-.3078962{col 26}{space 2} .0248249{col 37}{space 1}  -12.40{col 46}{space 3}0.000{col 54}{space 4}-.3567762{col 67}{space 3}-.2590161
{txt}{hline 13}{c BT}{hline 11}{hline 11}{hline 9}{hline 8}{hline 13}{hline 12}
{help ivreg2##idtest:Underidentification test} (Kleibergen-Paap rk LM statistic):{res}{col 71}  29.315
{txt}{col 52}Chi-sq({res}1{txt}) P-val =  {res}{col 73}0.0000
{txt}{hline 78}
{help ivreg2##widtest:Weak identification test} (Cragg-Donald Wald F statistic):{res}{col 71} 552.623
{txt}                         (Kleibergen-Paap rk Wald F statistic):{res}{col 71}  59.711
{txt}Stock-Yogo weak ID test critical values:{res}{txt}{col 42}10% maximal IV size{res}{col 73} 16.38
{txt}{col 42}15% maximal IV size{res}{col 73}  8.96
{txt}{col 42}20% maximal IV size{res}{col 73}  6.66
{txt}{col 42}25% maximal IV size{res}{col 73}  5.53
{txt}Source: Stock-Yogo (2005).  Reproduced by permission.
NB: Critical values are for Cragg-Donald F statistic and i.i.d. errors.
{hline 78}
{help ivreg2##overidtests:Hansen J statistic} (overidentification test of all instruments):{res}{col 71}   0.000
{txt}{col 50}(equation exactly identified)
{hline 78}
Instrumented:{col 23}d_Grain
Included instruments:{col 23}lnGDP_pc_03
Excluded instruments:{col 23}dsim_Grain
{help ivreg2##partial:Partialled-out}:{col 23}_cons
{col 23}nb: total SS, model F and R2s are after partialling-out;
{col 23}    any {help ivreg2##s_small:small-sample adjustments} include partialled-out
{col 23}    variables in regressor count K
{hline 78}
{res}
{txt}Absorbed degrees of freedom:
{res}{col 1}{text}{hline 13}{c TT}{hline 12}{hline 12}{hline 14}{hline 1}{c TRC}
{col 1}{text} Absorbed FE{col 14}{c |} Categories{col 27} - Redundant{col 39}  = Num. Coefs{col 54}{c |}
{res}{col 1}{text}{hline 13}{c +}{hline 12}{hline 12}{hline 14}{hline 1}{c RT}
{col 1}{text}     city_id{col 14}{c |}{space 1}      265{col 27}{space 1}      265{col 39}{result}{space 1}        0{col 53}{text}*{col 54}{c |}
{res}{col 1}{text}{hline 13}{c BT}{hline 12}{hline 12}{hline 14}{hline 1}{c BRC}
* = FE nested within cluster; treated as redundant for DoF computation
{res}{txt}
{com}.         
.         outreg2 using "$logfiles/table_V4", ctitle("no seaside county") addtext(Controls, Y, City FE, Y) append excel nocons nor2 depvar addstat(K-P Wald F, e(rkf)) adec(3) dec(3) keep(d_Grain)
{txt}{browse `"E:\2024-00768_数据\2024-00768+日志文件/table_V4.xml"'}
{browse `"E:\2024-00768_数据"' :dir}{com} : {txt}{stata `"seeout using "E:\2024-00768_数据\2024-00768+日志文件/table_V4.txt""':seeout}

{com}. 
. 
.         
.         
.         
. *******************************************************************************
. ************************* 图VI1.粮食增产对土地财政的影响 ************************
. *******************************************************************************
. 
.         use $working_data\county_panel.dta ,clear
{txt}
{com}.         capture mkdir "$logfiles/figure_VI1"
{txt}
{com}. 
.         
.                                                 ***--- 变量处理 ---***      
.         
.         * 生成变量的基期(2003)值
.         gen is_yr2003 = 1 if year==2003
{txt}(58,333 missing values generated)

{com}.         foreach v of varlist Grain lnGDP_pc lnlandinc lnlandexp{c -(}
{txt}  2{com}.                 
.                 bysort county_id (year): egen `v'_03 = mean(`v'*is_yr2003)
{txt}  3{com}.                 
.         {c )-}
{txt}(8,523 missing values generated)
(11,649 missing values generated)
(30,651 missing values generated)
(26,536 missing values generated)

{com}.         
.         
.         * 生成相对基期的差分
.         foreach v of varlist Grain lnlandinc lnlandexp{c -(}
{txt}  2{com}.                 
.                 gen d_`v' = `v' - `v'_03
{txt}  3{com}.                 
.         {c )-}
{txt}(13,008 missing values generated)
(52,044 missing values generated)
(51,258 missing values generated)

{com}. 
. 
.                                                 ***--- 逐年差分估计 ---***
.         /*2003年的位置由于基期=末期，
>         差分的自变量和因变量都为0，回归无意义，会出现红叉，
>         后续会将其设为0，不影响结果。*/
.         foreach v of varlist d_lnlandinc d_lnlandexp{c -(}
{txt}  2{com}.                 preserve
{txt}  3{com}.                 drop if `v'==. //去掉数据缺失的年份
{txt}  4{com}.                 statsby _b[d_Grain] _se[d_Grain],by(year) saving("$logfiles/figure_VI1/est_`v'",replace): ivreghdfe `v' lnGDP_pc_03 (d_Grain = dsim_Grain) if year>=2003&year<=2016, absorb(city_id) cluster(city_id)
{txt}  5{com}.             restore
{txt}  6{com}.         {c )-}
{txt}(52,044 observations deleted)
{res}{txt}(running {bf:ivreghdfe} on estimation sample)
{res}{p2colset 7 16 20 2}{...}

{txt}{p2col :Command:}{res:ivreghdfe d_lnlandinc lnGDP_pc_03 (d_Grain = dsim_Grain) if year>=2003&year<=2016, absorb(city_id) cluster(city_id)}{p_end}
{p2colset 7 16 20 2}{...}
{p2col :_stat_1:}{res:_b[d_Grain]}{p_end}
{p2colset 7 16 20 2}{...}
{p2col :_stat_2:}{res:_se[d_Grain]}{p_end}
           By: {res}year
{txt}{p 0 4 2}
(file {bf}
E:\2024-00768_数据\2024-00768+日志文件/figure_VI1/est_d_lnlandinc.dta{rm}
not found)
{p_end}

Statsby groups
{hline 4}{c +}{hline 3} 1 {hline 3}{c +}{hline 3} 2 {hline 3}{c +}{hline 3} 3 {hline 3}{c +}{hline 3} 4 {hline 3}{c +}{hline 3} 5 
{err}x{txt}....
(51,258 observations deleted)
{res}{txt}(running {bf:ivreghdfe} on estimation sample)
{res}{p2colset 7 16 20 2}{...}

{txt}{p2col :Command:}{res:ivreghdfe d_lnlandexp lnGDP_pc_03 (d_Grain = dsim_Grain) if year>=2003&year<=2016, absorb(city_id) cluster(city_id)}{p_end}
{p2colset 7 16 20 2}{...}
{p2col :_stat_1:}{res:_b[d_Grain]}{p_end}
{p2colset 7 16 20 2}{...}
{p2col :_stat_2:}{res:_se[d_Grain]}{p_end}
           By: {res}year
{txt}{p 0 4 2}
(file {bf}
E:\2024-00768_数据\2024-00768+日志文件/figure_VI1/est_d_lnlandexp.dta{rm}
not found)
{p_end}

Statsby groups
{hline 4}{c +}{hline 3} 1 {hline 3}{c +}{hline 3} 2 {hline 3}{c +}{hline 3} 3 {hline 3}{c +}{hline 3} 4 {hline 3}{c +}{hline 3} 5 
{err}x{txt}....

{com}.                 
.                 
.                                                 ***--- 作图输出 ---***
.                                                 
.                 * a. 土地相关财政收入
.                 use "$logfiles/figure_VI1/est_d_lnlandinc",clear
{txt}(statsby: ivreghdfe)

{com}.                 rename _stat_1 est_coef
{res}{txt}
{com}.                 rename _stat_2 est_se
{res}{txt}
{com}.                 replace est_coef = 0 if year==2003      //末期=基期，设为0
{txt}(1 real change made)

{com}.                 replace est_se = 0 if year==2003
{txt}(1 real change made)

{com}.                 //95% CI
.                 gen lower_95ci = est_coef - 1.96*est_se
{txt}
{com}.                 gen upper_95ci = est_coef + 1.96*est_se
{txt}
{com}.                 drop if est_se==.         //去掉数据缺失的年份
{txt}(0 observations deleted)

{com}.                 twoway connected est_coef year,msize(small) || rline lower_95ci upper_95ci year, lpattern(dash) ||, scheme(s1mono) legend(off) yline(0,lpattern(refline)) xline(2003) xlabel(2003(1)2007,labsize(vsmall)) ylabel(-0.8(0.4)0.8) ytitle("估计系数", margin(small) size(medsmall)) subtitle("a.土地相关财政收入",size(large))  name(figure_VI1_a,replace)
{p 0 4 2}
{txt}(note:  named style
refline not found in class
linepattern,  default attributes used)
{p_end}
{res}{txt}
{com}. 
.                 
.                 
.                 * b. 土地相关财政支出
.                 use "$logfiles/figure_VI1/est_d_lnlandexp",clear
{txt}(statsby: ivreghdfe)

{com}.                 rename _stat_1 est_coef
{res}{txt}
{com}.                 rename _stat_2 est_se
{res}{txt}
{com}.                 replace est_coef = 0 if year==2003      //末期=基期，设为0
{txt}(1 real change made)

{com}.                 replace est_se = 0 if year==2003
{txt}(1 real change made)

{com}.                 //95% CI
.                 gen lower_95ci = est_coef - 1.96*est_se
{txt}
{com}.                 gen upper_95ci = est_coef + 1.96*est_se
{txt}
{com}.                 drop if est_se==.       //去掉数据缺失的年份
{txt}(0 observations deleted)

{com}.                 
.                 twoway connected est_coef year,msize(small) || rline lower_95ci upper_95ci year, lpattern(dash) ||, scheme(s1mono) legend(off) yline(0,lpattern(refline)) xline(2003) xlabel(2003(1)2007,labsize(vsmall)) ylabel(-0.8(0.4)0.8) ytitle("估计系数", margin(small) size(medsmall) ) subtitle("b.土地相关财政支出",size(large)) name(figure_VI1_b,replace)
{p 0 4 2}
{txt}(note:  named style
refline not found in class
linepattern,  default attributes used)
{p_end}
{res}{txt}
{com}. 
.                 
.         graph combine figure_VI1_a figure_VI1_b, cols(2) scheme(s1mono) xsize(100) ysize(50)
{p 0 4 2}
{txt}(note:  named style
refline not found in class
linepattern,  default attributes used)
{p_end}
{p 0 4 2}
{txt}(note:  named style
refline not found in class
linepattern,  default attributes used)
{p_end}
{res}{txt}
{com}.         graph export "$logfiles/figure_VI1/figure_VI1.png",replace width(2500) height(1200)
{txt}{p 0 4 2}
(file {bf}
E:\2024-00768_数据\2024-00768+日志文件/figure_VI1/figure_VI1.png{rm}
not found)
{p_end}
{p 0 4 2}
file {bf}
E:\2024-00768_数据\2024-00768+日志文件/figure_VI1/figure_VI1.png{rm}
saved as
PNG
format
{p_end}

{com}.                 
. 
.                 
.                 
.                 
.                 
.                 log close
      {txt}name:  {res}<unnamed>
       {txt}log:  {res}E:\2024-00768_数据\2024-00768+日志文件/log_appendix.smcl
  {txt}log type:  {res}smcl
 {txt}closed on:  {res}23 Apr 2025, 16:36:49
{txt}{.-}
{smcl}
{txt}{sf}{ul off}