--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
      name:  <unnamed>
       log:  D:/stata17/Replication_paper/Logfile_forReg/Analysis_benchmark1_制造业.txt
  log type:  text
 opened on:  25 Jan 2026, 11:49:53

. 
. ***************
. * Run
. ***************
. 
. use "$DATA\intermediate\forBenchmarkReg_pre.dta",clear

. 
. global y_var "lnmainrev lnoperrev lnsales lnemp_yearend "

. global x_var "policy policy_manuf policy_modsrv "

. global z_var "lnasset inv_intensity inv_to_sales leverage ppe_ratio current_assets_ratio roa ros profit_total"

. sum $y_var $z_var

    Variable |        Obs        Mean    Std. dev.       Min        Max
-------------+---------------------------------------------------------
   lnmainrev |  1,034,854    10.62181    2.004435          0   20.58941
   lnoperrev |  1,043,854    10.62439    2.028006          0   20.59087
     lnsales |    784,265    10.37895    2.119739          0   19.44178
lnemp_year~d |    924,088    4.458913    1.518001          0   16.74697
     lnasset |    908,250     11.0118     2.22083          0   23.61651
-------------+---------------------------------------------------------
inv_intens~y |    846,403    21.58578     2210.01  -13528.09    1978975
inv_to_sales |    972,379    315.1202    24647.77       -9.9   1.39e+07
    leverage |    743,857    98.67503     8650.01    -129245    4706340
   ppe_ratio |    897,351    19.84756    675.3981  -8.720134   636066.7
current_as~o |    908,250    71.28058    30.43491  -15456.01   251.6501
-------------+---------------------------------------------------------
         roa |    907,443    392.7137    141801.8  -9.10e+07   3.66e+07
         ros |  1,043,784    2267.741     1506028  -2.56e+08   1.04e+09
profit_total |  1,065,444    29052.13     1283946  -7.61e+08   3.27e+08

. global controlVar " inv_to_sales leverage ppe_ratio ros profit_total "

. global mechanismVar "taxburden_due taxburden_due_vat taxburden_paid taxburden_paid_vat modern5 modern6 modern5_int modern6_int"

. 
. * manufacture only
. keep if  industry_group==1 
(400,597 observations deleted)

. 
. *利用产业关联度中位数区分实验组和对照组
. * 1) 构造产业关联度的行业代码 industryid_io2007
. gen industryid_io2007 = .
(664,859 missing values generated)

. 
. * -------- 先用 a0116 (3位数) 匹配 --------
. replace industryid_io2007 = 11 if a0116 == 131
(1,421 real changes made)

. replace industryid_io2007 = 12 if a0116 == 132
(1,384 real changes made)

. replace industryid_io2007 = 13 if a0116 == 133
(1,405 real changes made)

. replace industryid_io2007 = 14 if a0116 == 134
(638 real changes made)

. replace industryid_io2007 = 15 if a0116 == 135
(1,441 real changes made)

. replace industryid_io2007 = 16 if a0116 == 136
(2,748 real changes made)

. replace industryid_io2007 = 17 if inlist(a0116, 137, 139)
(5,053 real changes made)

. replace industryid_io2007 = 18 if a0116 == 143
(1,218 real changes made)

. replace industryid_io2007 = 19 if a0116 == 144
(1,207 real changes made)

. replace industryid_io2007 = 20 if a0116 == 146
(1,295 real changes made)

. replace industryid_io2007 = 21 if inlist(a0116, 145, 149, 142, 141)
(8,368 real changes made)

. replace industryid_io2007 = 22 if a0116 == 151
(3,375 real changes made)

. replace industryid_io2007 = 23 if inlist(a0116, 152, 153)
(5,172 real changes made)

. replace industryid_io2007 = 24 if a0116 == 16
(0 real changes made)

. replace industryid_io2007 = 25 if inlist(a0116, 171, 175)
(20,660 real changes made)

. replace industryid_io2007 = 26 if a0116 == 172
(2,178 real changes made)

. replace industryid_io2007 = 27 if inlist(a0116, 173, 174)
(1,679 real changes made)

. replace industryid_io2007 = 28 if inlist(a0116, 177, 178)
(5,915 real changes made)

. replace industryid_io2007 = 29 if a0116 == 176
(5,984 real changes made)

. replace industryid_io2007 = 30 if inlist(a0116, 18, 195)
(5,804 real changes made)

. replace industryid_io2007 = 31 if inlist(a0116, 191, 192, 193, 194)
(9,022 real changes made)

. replace industryid_io2007 = 32 if a0116 == 20
(0 real changes made)

. replace industryid_io2007 = 33 if a0116 == 21
(0 real changes made)

. replace industryid_io2007 = 34 if a0116 == 22
(0 real changes made)

. replace industryid_io2007 = 35 if a0116 == 23
(0 real changes made)

. replace industryid_io2007 = 36 if inlist(a0116, 241, 244)
(3,780 real changes made)

. replace industryid_io2007 = 37 if inlist(a0116, 251, 253)
(2,096 real changes made)

. replace industryid_io2007 = 38 if a0116 == 252
(1,096 real changes made)

. replace industryid_io2007 = 39 if a0116 == 261
(11,514 real changes made)

. replace industryid_io2007 = 40 if a0116 == 262
(1,545 real changes made)

. replace industryid_io2007 = 41 if a0116 == 263
(900 real changes made)

. replace industryid_io2007 = 42 if a0116 == 264
(6,030 real changes made)

. replace industryid_io2007 = 43 if a0116 == 265
(3,940 real changes made)

. replace industryid_io2007 = 44 if a0116 == 266
(10,995 real changes made)

. replace industryid_io2007 = 45 if a0116 == 268
(3,022 real changes made)

. replace industryid_io2007 = 46 if a0116 == 27
(0 real changes made)

. replace industryid_io2007 = 47 if a0116 == 28
(0 real changes made)

. replace industryid_io2007 = 48 if a0116 == 291
(6,741 real changes made)

. replace industryid_io2007 = 49 if a0116 == 292
(23,503 real changes made)

. replace industryid_io2007 = 50 if a0116 == 301
(6,880 real changes made)

. replace industryid_io2007 = 51 if a0116 == 302
(9,126 real changes made)

. replace industryid_io2007 = 52 if a0116 == 303
(4,568 real changes made)

. replace industryid_io2007 = 53 if inlist(a0116, 304, 305, 306)
(4,375 real changes made)

. replace industryid_io2007 = 54 if a0116 == 307
(3,528 real changes made)

. replace industryid_io2007 = 55 if a0116 == 308
(3,271 real changes made)

. replace industryid_io2007 = 56 if a0116 == 309
(8,491 real changes made)

. replace industryid_io2007 = 57 if a0116 == 311
(3,012 real changes made)

. replace industryid_io2007 = 58 if a0116 == 312
(3,557 real changes made)

. replace industryid_io2007 = 59 if a0116 == 314
(7,355 real changes made)

. replace industryid_io2007 = 60 if a0116 == 315
(2,163 real changes made)

. replace industryid_io2007 = 61 if inlist(a0116, 321, 322, 323, 324, 325)
(8,321 real changes made)

. replace industryid_io2007 = 62 if a0116 == 326
(5,803 real changes made)

. replace industryid_io2007 = 63 if a0116 == 33
(0 real changes made)

. replace industryid_io2007 = 64 if a0116 == 341
(4,552 real changes made)

. replace industryid_io2007 = 65 if a0116 == 342
(6,175 real changes made)

. replace industryid_io2007 = 66 if a0116 == 343
(2,080 real changes made)

. replace industryid_io2007 = 67 if a0116 == 344
(6,078 real changes made)

. replace industryid_io2007 = 68 if inlist(a0116, 345, 346, 347, 348)
(17,272 real changes made)

. replace industryid_io2007 = 69 if a0116 == 351
(5,584 real changes made)

. replace industryid_io2007 = 70 if a0116 == 352
(8,254 real changes made)

. replace industryid_io2007 = 71 if a0116 == 357
(5,152 real changes made)

. replace industryid_io2007 = 72 if inlist(a0116, 353, 354, 355, 356, 358, 359)
(23,763 real changes made)

. replace industryid_io2007 = 73 if a0116 == 371
(2,238 real changes made)

. replace industryid_io2007 = 74 if a0116 == 36
(0 real changes made)

. replace industryid_io2007 = 75 if a0116 == 373
(4,397 real changes made)

. replace industryid_io2007 = 76 if inlist(a0116, 372, 374, 375, 376, 377, 379)
(17,015 real changes made)

. replace industryid_io2007 = 77 if a0116 == 381
(2,756 real changes made)

. replace industryid_io2007 = 78 if a0116 == 382
(8,664 real changes made)

. replace industryid_io2007 = 79 if a0116 == 383
(5,768 real changes made)

. replace industryid_io2007 = 80 if inlist(a0116, 385, 386)
(3,787 real changes made)

. replace industryid_io2007 = 81 if inlist(a0116, 387, 389, 384)
(7,269 real changes made)

. replace industryid_io2007 = 82 if a0116 == 392
(7,097 real changes made)

. replace industryid_io2007 = 83 if inlist(a0116, 393, 394)
(3,684 real changes made)

. replace industryid_io2007 = 84 if a0116 == 391
(3,369 real changes made)

. replace industryid_io2007 = 85 if inlist(a0116, 396, 397)
(16,368 real changes made)

. replace industryid_io2007 = 86 if a0116 == 395
(2,035 real changes made)

. replace industryid_io2007 = 87 if a0116 == 399
(11,359 real changes made)

. replace industryid_io2007 = 88 if a0116 == 40
(0 real changes made)

. replace industryid_io2007 = 89 if a0116 == 347
(383 real changes made)

. replace industryid_io2007 = 90 if inlist(a0116, 41, 242, 243, 245, 246)
(4,853 real changes made)

. replace industryid_io2007 = 91 if a0116 == 42
(0 real changes made)

. 
. * -------- 再用 a0114 (2位数) 补充缺失 --------
. replace industryid_io2007 = 24 if missing(industryid_io2007) & a0114 == 16
(463 real changes made)

. replace industryid_io2007 = 30 if missing(industryid_io2007) & a0114 == 18
(39,104 real changes made)

. replace industryid_io2007 = 32 if missing(industryid_io2007) & a0114 == 20
(10,475 real changes made)

. replace industryid_io2007 = 33 if missing(industryid_io2007) & a0114 == 21
(6,392 real changes made)

. replace industryid_io2007 = 34 if missing(industryid_io2007) & a0114 == 22
(12,027 real changes made)

. replace industryid_io2007 = 35 if missing(industryid_io2007) & a0114 == 23
(9,751 real changes made)

. replace industryid_io2007 = 46 if missing(industryid_io2007) & a0114 == 27
(14,114 real changes made)

. replace industryid_io2007 = 47 if missing(industryid_io2007) & a0114 == 28
(3,347 real changes made)

. replace industryid_io2007 = 63 if missing(industryid_io2007) & a0114 == 33
(32,402 real changes made)

. replace industryid_io2007 = 74 if missing(industryid_io2007) & a0114 == 36
(36,417 real changes made)

. replace industryid_io2007 = 88 if missing(industryid_io2007) & a0114 == 40
(23,119 real changes made)

. replace industryid_io2007 = 90 if missing(industryid_io2007) & a0114 == 41
(28,157 real changes made)

. replace industryid_io2007 = 91 if missing(industryid_io2007) & a0114 == 42
(8,068 real changes made)

. 
. * 2) match 产业关联度指标 use industryid_io2007:43 金属设备修理没有匹配.
. merge m:1 industryid_io2007 using "$DATA\sourcedata\industryRelation2007.dta"

    Result                      Number of obs
    -----------------------------------------
    Not matched                        29,875
        from master                    29,875  (_merge==1)
        from using                          0  (_merge==2)

    Matched                           634,984  (_merge==3)
    -----------------------------------------

. keep if _merge == 3
(29,875 observations deleted)

. drop _merge

. 
. * 3) gen policy var * industryRelation2007 : directly use industryRelation2007 as density DID.
. * gen X variables
. rename group D_manuf_highRelation  //区分与试点服务业产业关联度高低(0/1)虚拟变量

. gen double policy_manuf  = policy * D_manuf_highRelation   // 制造业的政策效应

. label var policy_manuf  "Policy × Manufacturing (vs control Manu)"

. 
. 
. *outlier process
. misstable sum $y_var
                                                               Obs<.
                                                +------------------------------
               |                                | Unique
      Variable |     Obs=.     Obs>.     Obs<.  | values        Min         Max
  -------------+--------------------------------+------------------------------
     lnmainrev |     3,671             631,313  |   >500          0    19.28596
     lnoperrev |     1,925             633,059  |   >500          0    19.59135
       lnsales |     3,554             631,430  |   >500          0    19.44178
  lnemp_year~d |    80,548             554,436  |   >500          0    16.74697
  -----------------------------------------------------------------------------

. tabstat $y_var ,by(D_manuf_highRelation)

Summary statistics: Mean
Group variable: D_manuf_highRelation 

D_manuf_highRelation |  lnmain~v  lnoper~v   lnsales  lnemp_~d
---------------------+----------------------------------------
        Below median |  10.61342  10.62787  10.62976  4.647478
    Median and above |  10.69915  10.70849  10.71239  4.794696
---------------------+----------------------------------------
               Total |  10.65183  10.66398  10.66682  4.712684
--------------------------------------------------------------

. ttest lnmainrev, by(D_manuf_highRelation)

Two-sample t test with equal variances
------------------------------------------------------------------------------
   Group |     Obs        Mean    Std. err.   Std. dev.   [95% conf. interval]
---------+--------------------------------------------------------------------
Below me | 348,468    10.61342    .0032724    1.931717      10.607    10.61983
Median a | 282,845    10.69915    .0035479    1.886903    10.69219     10.7061
---------+--------------------------------------------------------------------
Combined | 631,313    10.65183    .0024067    1.912243    10.64711    10.65654
---------+--------------------------------------------------------------------
    diff |           -.0857312    .0048384               -.0952143    -.076248
------------------------------------------------------------------------------
    diff = mean(Below me) - mean(Median a)                        t = -17.7189
H0: diff = 0                                     Degrees of freedom =   631311

    Ha: diff < 0                 Ha: diff != 0                 Ha: diff > 0
 Pr(T < t) = 0.0000         Pr(|T| > |t|) = 0.0000          Pr(T > t) = 1.0000

. 
. winsor2 $y_var $controlVar $mechanismVar, replace cut(1 99)

. 
. * combine citycluster and distance
. merge m:1 countycode using  "$DATA\sourcedata\distanceBetweenCounty.dta" 

    Result                      Number of obs
    -----------------------------------------
    Not matched                       204,238
        from master                   203,976  (_merge==1)
        from using                        262  (_merge==2)

    Matched                           431,008  (_merge==3)
    -----------------------------------------

. keep if _merge == 3
(204,238 observations deleted)

. drop _merge

. replace km = km - 1 //调整县区到所在中心县区的距离基准点为0，原有数据+ 1km，现在调整回去
(431,008 real changes made)

. rename km distance

. rename km1 relativedistance

. rename bb citycluster

. rename a0114 industrycode2

. rename a0116 industrycode3

. 
. *----------------
. * regression
. *----------------
. xtset firm_id years

Panel variable: firm_id (unbalanced)
 Time variable: years, 2009 to 2014, but with gaps
         Delta: 1 unit

. 
. sum lnmainrev modern5_int modern6_int taxburden_due_vat

    Variable |        Obs        Mean    Std. dev.       Min        Max
-------------+---------------------------------------------------------
   lnmainrev |    428,704    10.54455    1.836831   5.634789   15.14065
 modern5_int |    429,838    .0030511    .0106018          0   .0750784
 modern6_int |    429,838    .0031854    .0110048          0   .0778957
taxbur~e_vat |    429,838    .0361725    .0358371          0   .1690647

. 
. 
. ********************************************************************************
. ****************附录表III1 Panel A: 制造业 descriptive statistics
. *lnmainrev  lnsales policy_manuf
. outreg2 using "$EXHIBIT/desc_PanelA.doc", replace sum(log) ///
>     keep(lnmainrev  lnsales policy_manuf) dec(3)

    Variable |        Obs        Mean    Std. dev.       Min        Max
-------------+---------------------------------------------------------
       years |    431,008    2011.432    1.641893       2009       2014
       a0103 |    431,008    198.6925    63.50956        110        400
       a0106 |    431,008    33.04189    11.42856         11         65
       a0108 |    431,008    38671.91    93310.19       1301     500243
  countycode |    431,008      330955    114438.2     110101     659001
-------------+---------------------------------------------------------
       a0111 |    431,008    2008.021    4.235248       2002       2011
industryco~2 |    431,008     29.5455    8.317924         13         42
industryco~3 |    431,000    299.6379    84.09784        131        429
       a0118 |    430,211    2999.691    841.0877       1310       4290
is_manufac~g |    431,008           1           0          1          1
-------------+---------------------------------------------------------
is_control~e |    431,008           0           0          0          0
is_modern_~e |    431,008           0           0          0          0
      is_reg |    431,008           1           0          1          1
total_assets |    362,562    281516.9     2009517      -4831   2.19e+08
  total_liab |    305,345    189149.6     1249556   -1780850   1.15e+08
-------------+---------------------------------------------------------
   ln_equity |    402,628    9.422686    2.300356          0    18.9892
inv_intens~y |    358,276    18.67263    17.31745  -34.16683   760.4819
inv_to_sales |    424,990    .2682126    .4641674          0   3.325893
    leverage |    304,646    62.61994    30.96289          0   169.7184
   ppe_ratio |    360,164    22.80776    18.17954          0   78.54735
-------------+---------------------------------------------------------
current_as~o |    362,186    68.33837    22.24157  -873.5919        100
         roa |    361,986    17.49151    4221.098    -967100    1459600
         ros |    429,837    .6309797    17.98856       -115   48.49896
profit_total |    431,003    8654.176    35772.54     -57816     264780
        prov |    431,008    33.04189    11.42856         11         65
-------------+---------------------------------------------------------
 policy_year |    431,008    2013.236    .5557724       2012       2014
      policy |    431,008    .2735958    .4458045          0          1
industry_g~p |    431,008           1           0          1          1
     D_manuf |    431,008           1           0          1          1
    D_modsrv |    431,008           0           0          0          0
-------------+---------------------------------------------------------
 mainbiz_rev |    430,322    250739.2     1928396          0   2.16e+08
operating_~v |    430,967    261776.7     2085001          0   3.22e+08
sales_dome~c |    431,008    215648.5     1733300     -46018   1.69e+08
sales_export |    431,008    43559.24    767239.1   -2031868   2.15e+08
 sales_total |    431,008    259220.9     1971211          0   2.17e+08
-------------+---------------------------------------------------------
 emp_yearend |    365,279    372.8639     32827.5          0   1.88e+07
     emp_avg |     65,601    352.3195    1309.841          0     198971
     firm_id |    431,008    548843.1    280139.8        548    1041472
     lnasset |    362,186    10.63249    1.881371          0   19.20346
   lnmainrev |    428,704    10.54455    1.836831   5.634789   15.14065
-------------+---------------------------------------------------------
   lnoperrev |    429,838    10.55545     1.84684   5.631212   15.18841
     lnsales |    428,505    10.55656    1.850473   5.605802    15.1897
lnemp_year~d |    365,130    4.651866    1.403199   1.098612   8.084562
taxburden_~e |    429,838    .0366711    .0358796          0   .1692745
taxbur~e_vat |    429,838    .0361725    .0358371          0   .1690647
-------------+---------------------------------------------------------
taxburden_~d |    429,838    .0341776    .0333991          0   .1663005
taxbur~d_vat |    429,762    .0336497    .0332634          0   .1651845
     modern5 |    431,008    540.0621    2667.138          0      23567
     modern6 |    431,008    561.2184    2753.315          0      24282
 modern5_int |    429,838    .0030511    .0106018          0   .0750784
-------------+---------------------------------------------------------
 modern6_int |    429,838    .0031854    .0110048          0   .0778957
industryid~7 |    431,008     56.6093    22.21396         11         91
industryre~n |    431,008    .0487843    .0201692   .0090352   .1356852
D_manuf_hi~n |    431,008    .4526575    .4977542          0          1
policy_manuf |    431,008    .1180813    .3227048          0          1
-------------+---------------------------------------------------------
    distance |    431,008    148.1619     138.051          0   1063.613
 citycluster |    431,008    3.968787    3.655888          1         17
relativedi~e |    431,008    .7086881      .55188   .0028171   3.945218

Following variable is string, not included:  
a0102  a0104  a0105  a0107  a0109  a0112  a0113  a0115  a0117  a0119  a0120  code_str  industryname_io2007  区县政府  Following variable has no observation, not included:  
distance_reviseGuangdong  distance_reviseGuangdong1  
D:/stata17/Replication_paper/Exhibits/desc_PanelA.doc
dir : seeout

. 
. 
.         
. 
. ********************************************************************************
. *****************表1 Panel A:制造业 benchmark regression:staggered DID 
. 
. **************1)  Sun and Abraham (2021).— eventstudyinteract**************
. 
. *****************************Y: lnmainrev*******************************
. preserve

. * a) cohort variable
. gen cohort = . 
(431,008 missing values generated)

. replace cohort = 2012 if policy_year == 2012 & D_manuf_highRelation == 1
(13,012 real changes made)

. replace cohort = 2013 if policy_year == 2013 & D_manuf_highRelation == 1
(121,356 real changes made)

. replace cohort = 2014 if policy_year == 2014 & D_manuf_highRelation == 1
(60,731 real changes made)

. 
. * b) a dummy for the control group 
. gen never_treated = (cohort == .)

. 
. * c) dummies for event time ,excluding -1 .
. gen refy = years - cohort 
(235,909 missing values generated)

. tab refy, miss gen(devent)

       refy |      Freq.     Percent        Cum.
------------+-----------------------------------
         -5 |      8,888        2.06        2.06
         -4 |     30,599        7.10        9.16
         -3 |     37,170        8.62       17.79
         -2 |     37,580        8.72       26.50
         -1 |     29,968        6.95       33.46
          0 |     34,895        8.10       41.55
          1 |     14,454        3.35       44.91
          2 |      1,545        0.36       45.27
          . |    235,909       54.73      100.00
------------+-----------------------------------
      Total |    431,008      100.00

. des devent* 

Variable      Storage   Display    Value
    name         type    format    label      Variable label
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
devent1         byte    %8.0g                 refy== -5.0000
devent2         byte    %8.0g                 refy== -4.0000
devent3         byte    %8.0g                 refy== -3.0000
devent4         byte    %8.0g                 refy== -2.0000
devent5         byte    %8.0g                 refy== -1.0000
devent6         byte    %8.0g                 refy== 0.0000
devent7         byte    %8.0g                 refy== 1.0000
devent8         byte    %8.0g                 refy== 2.0000
devent9         byte    %8.0g                 refy== .

. drop devent5 devent9

. 
. * d) estimate event-study model
. eventstudyinteract lnmainrev devent*  , cohort(cohort) control_cohort(never_treated)   absorb(firm_id  years ) vce(cluster prov#industrycode2)
(obs=194,078)

IW estimates for dynamic effects                       Number of obs = 413,990
Absorbing 2 HDFE groups                                F(15, 843)    =    6.01
                                                       Prob > F      =  0.0000
                                                       R-squared     =  0.9440
                                                       Adj R-squared =  0.9240
                                                       Root MSE      =  0.5053
                   (Std. err. adjusted for 844 clusters in prov#industrycode2)
------------------------------------------------------------------------------
             |               Robust
   lnmainrev | Coefficient  std. err.      t    P>|t|     [95% conf. interval]
-------------+----------------------------------------------------------------
     devent1 |  -.0208376   .0204511    -1.02   0.309    -.0609787    .0193034
     devent2 |   .0015078   .0120004     0.13   0.900    -.0220463    .0250619
     devent3 |   .0062822    .008475     0.74   0.459    -.0103524    .0229167
     devent4 |   .0166068   .0068572     2.42   0.016     .0031475     .030066
     devent6 |   .0111864   .0092189     1.21   0.225    -.0069083    .0292811
     devent7 |   .0532307   .0183694     2.90   0.004     .0171755    .0892859
     devent8 |    .000644   .0678295     0.01   0.992    -.1324904    .1337785
------------------------------------------------------------------------------

. gen insample = e(sample)

. matrix b = e(b_iw)

. matrix V = e(V_iw)

. ereturn post b V 

. 
. 
. ********************************************************************************
. * e) draw event-study plot---***************附录图IV1 A **************
. set scheme s1mono

. coefplot ///
>     (., keep(devent1 devent2 devent3 devent4 devent6 devent7 devent8)) ///
> ,   vertical ciopts(recast(rcap)) ///
>     xline(4.5, lpattern(dash) lcolor(red)) ///
>     yline(0, lpattern(solid) lcolor(gs8)) ///
>     addplot(scatteri 0 4.5, msymbol(O) mcolor(red) msize(medium)) ///
>     xlabel(1 "-5" 2 "-4" 3 "-3" 4 "-2" 5 "0" 6 "1" 7 "2") ///
>     xtitle("事件时间（相对期）") ///
>     ytitle("相对 -1 期的系数估计") ///
>     legend(off)

. 
. 
. * f) calculate aggregate effects
. keep if insample == 1 & D_manuf_highRelation == 1 & inlist(refy, 0,1,2)
(381,849 observations deleted)

. 
. tab refy, matcell(freq)

       refy |      Freq.     Percent        Cum.
------------+-----------------------------------
          0 |     33,705       68.56       68.56
          1 |     13,939       28.35       96.92
          2 |      1,515        3.08      100.00
------------+-----------------------------------
      Total |     49,159      100.00

. matrix list freq

freq[3,1]
       c1
r1  33705
r2  13939
r3   1515

. 
. scalar N0 = freq[1,1]   // 第1行 = refy==0 的样本数

. scalar N1 = freq[2,1]   // 第2行 = refy==1 的样本数

. scalar N2 = freq[3,1]   // 第3行 = refy==2 的样本数

. display N0 N1 N2
33705139391515

. 
. scalar sumN = N0 + N1 + N2

. scalar w0 = N0/sumN

. scalar w1 = N1/sumN

. scalar w2 = N2/sumN

. display w0 w1 w2
.68563234.2835493.03081836

. 
. lincom w0*_b[devent6] + w1*_b[devent7] + w2*_b[devent8]

 ( 1)  .6856323*devent6 + .2835493*devent7 + .0308184*devent8 = 0

------------------------------------------------------------------------------
             | Coefficient  Std. err.      z    P>|z|     [95% conf. interval]
-------------+----------------------------------------------------------------
         (1) |   .0227831   .0114966     1.98   0.048     .0002502     .045316
------------------------------------------------------------------------------

. 
. restore

. 
. 
. **************2) Callaway & Sant'Anna 2021 — csdid ***************
. 
. *****************************Y: lnmainrev*******************************
. preserve

. * a) cohort variable
. gen cohort = 0 

. replace cohort = 2012 if policy_year == 2012 & D_manuf_highRelation == 1
(13,012 real changes made)

. replace cohort = 2013 if policy_year == 2013 & D_manuf_highRelation == 1
(121,356 real changes made)

. replace cohort = 2014 if policy_year == 2014 & D_manuf_highRelation == 1
(60,731 real changes made)

. 
. tab cohort,miss

     cohort |      Freq.     Percent        Cum.
------------+-----------------------------------
          0 |    235,909       54.73       54.73
       2012 |     13,012        3.02       57.75
       2013 |    121,356       28.16       85.91
       2014 |     60,731       14.09      100.00
------------+-----------------------------------
      Total |    431,008      100.00

. 
. * ATT
. csdid lnmainrev , ivar(firm_id) time(years) gvar(cohort) agg(simple) 
Panel is not balanced
Will use observations with Pair balanced (observed at t0 and t1)
...............
Difference-in-difference with Multiple Time Periods

                                                       Number of obs = 383,776
Outcome model  : regression adjustment
Treatment model: none
------------------------------------------------------------------------------
             | Coefficient  Std. err.      z    P>|z|     [95% conf. interval]
-------------+----------------------------------------------------------------
         ATT |   .0117019   .0042248     2.77   0.006     .0034215    .0199824
------------------------------------------------------------------------------
Control: Never Treated

See Callaway and Sant'Anna (2021) for details

. restore

. 
. 
. 
. **************3)  Borusyak et al.(2023).— did_imputation finished
. 
. *****************************Y: lnmainrev*******************************
. preserve

. 
. gen time_treated = . 
(431,008 missing values generated)

. replace time_treated = 2012 if policy_year == 2012 & D_manuf_highRelation == 1
(13,012 real changes made)

. replace time_treated = 2013 if policy_year == 2013 & D_manuf_highRelation == 1
(121,356 real changes made)

. replace time_treated = 2014 if policy_year == 2014 & D_manuf_highRelation == 1
(60,731 real changes made)

. 
. egen prov_ind2_fe = group(prov industrycode2)

. 
. did_imputation lnmainrev firm_id years time_treated, fe(firm_id years)  ///
>    autosample cluster(prov_ind2_fe)
Warning: part of the sample was dropped for the following coefficients because FE could not be imputed: tau.

                                                       Number of obs = 426,818
------------------------------------------------------------------------------
   lnmainrev | Coefficient  Std. err.      z    P>|z|     [95% conf. interval]
-------------+----------------------------------------------------------------
         tau |   .0278749   .0108044     2.58   0.010     .0066987    .0490511
------------------------------------------------------------------------------

. restore

. 
. 
. 
. 
. 
. ********************************************************************************
. ******Robust Check:替换被解释变量 附录表IV1 Panel A 
. ********************(1) Sun and Abraham(2021)**************
. *****************************Y: lnsales*******************************
. preserve

. * a) cohort variable
. gen cohort = . 
(431,008 missing values generated)

. replace cohort = 2012 if policy_year == 2012 & D_manuf_highRelation == 1
(13,012 real changes made)

. replace cohort = 2013 if policy_year == 2013 & D_manuf_highRelation == 1
(121,356 real changes made)

. replace cohort = 2014 if policy_year == 2014 & D_manuf_highRelation == 1
(60,731 real changes made)

. 
. * b) a dummy for the control group 
. gen never_treated = (cohort == .)

. 
. * c) dummies for event time ,excluding -1 .
. gen refy = years - cohort 
(235,909 missing values generated)

. tab refy, miss gen(devent)

       refy |      Freq.     Percent        Cum.
------------+-----------------------------------
         -5 |      8,888        2.06        2.06
         -4 |     30,599        7.10        9.16
         -3 |     37,170        8.62       17.79
         -2 |     37,580        8.72       26.50
         -1 |     29,968        6.95       33.46
          0 |     34,895        8.10       41.55
          1 |     14,454        3.35       44.91
          2 |      1,545        0.36       45.27
          . |    235,909       54.73      100.00
------------+-----------------------------------
      Total |    431,008      100.00

. des devent* 

Variable      Storage   Display    Value
    name         type    format    label      Variable label
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
devent1         byte    %8.0g                 refy== -5.0000
devent2         byte    %8.0g                 refy== -4.0000
devent3         byte    %8.0g                 refy== -3.0000
devent4         byte    %8.0g                 refy== -2.0000
devent5         byte    %8.0g                 refy== -1.0000
devent6         byte    %8.0g                 refy== 0.0000
devent7         byte    %8.0g                 refy== 1.0000
devent8         byte    %8.0g                 refy== 2.0000
devent9         byte    %8.0g                 refy== .

. drop devent5 devent9

. 
. * d) estimate event-study model
. quietly eventstudyinteract lnsales devent*  , cohort(cohort) control_cohort(never_treated)   absorb(firm_id  years) vce(cluster prov#industrycode2)

. gen insample = e(sample)

. matrix b = e(b_iw)

. matrix V = e(V_iw)

. ereturn post b V 

. 
. * e) calculate aggregate effects
. keep if insample == 1 & D_manuf_highRelation == 1 & inlist(refy, 0,1,2)
(381,687 observations deleted)

. 
. tab refy, matcell(freq)

       refy |      Freq.     Percent        Cum.
------------+-----------------------------------
          0 |     33,818       68.57       68.57
          1 |     13,983       28.35       96.92
          2 |      1,520        3.08      100.00
------------+-----------------------------------
      Total |     49,321      100.00

. matrix list freq

freq[3,1]
       c1
r1  33818
r2  13983
r3   1520

. 
. scalar N0 = freq[1,1]   // 第1行 = refy==0 的样本数

. scalar N1 = freq[2,1]   // 第2行 = refy==1 的样本数

. scalar N2 = freq[3,1]   // 第3行 = refy==2 的样本数

. display N0 N1 N2
33818139831520

. 
. scalar sumN = N0 + N1 + N2

. scalar w0 = N0/sumN

. scalar w1 = N1/sumN

. scalar w2 = N2/sumN

. display w0 w1 w2
.68567142.28351007.03081852

. 
. lincom w0*_b[devent6] + w1*_b[devent7] + w2*_b[devent8]

 ( 1)  .6856714*devent6 + .2835101*devent7 + .0308185*devent8 = 0

------------------------------------------------------------------------------
             | Coefficient  Std. err.      z    P>|z|     [95% conf. interval]
-------------+----------------------------------------------------------------
         (1) |    .028065    .012874     2.18   0.029     .0028325    .0532975
------------------------------------------------------------------------------

. 
. restore

. 
. 
. *************(2) Callaway & Sant'Anna 2021 — csdid********************
. *****************************Y: lnsales*******************************
. preserve

. * a) cohort variable
. gen cohort = 0 

. replace cohort = 2012 if policy_year == 2012 & D_manuf_highRelation == 1
(13,012 real changes made)

. replace cohort = 2013 if policy_year == 2013 & D_manuf_highRelation == 1
(121,356 real changes made)

. replace cohort = 2014 if policy_year == 2014 & D_manuf_highRelation == 1
(60,731 real changes made)

. 
. tab cohort,miss

     cohort |      Freq.     Percent        Cum.
------------+-----------------------------------
          0 |    235,909       54.73       54.73
       2012 |     13,012        3.02       57.75
       2013 |    121,356       28.16       85.91
       2014 |     60,731       14.09      100.00
------------+-----------------------------------
      Total |    431,008      100.00

. 
. * ATT
. csdid lnsales , ivar(firm_id) time(years) gvar(cohort) agg(simple) 
Panel is not balanced
Will use observations with Pair balanced (observed at t0 and t1)
...............
Difference-in-difference with Multiple Time Periods

                                                       Number of obs = 382,868
Outcome model  : regression adjustment
Treatment model: none
------------------------------------------------------------------------------
             | Coefficient  Std. err.      z    P>|z|     [95% conf. interval]
-------------+----------------------------------------------------------------
         ATT |   .0099029   .0042116     2.35   0.019     .0016483    .0181576
------------------------------------------------------------------------------
Control: Never Treated

See Callaway and Sant'Anna (2021) for details

. restore

. 
. 
. **************(3) Borusyak et al.(2023).— did_imputation****************
. *****************************Y: lnsales*******************************
. preserve

. 
. gen time_treated = . 
(431,008 missing values generated)

. replace time_treated = 2012 if policy_year == 2012 & D_manuf_highRelation == 1
(13,012 real changes made)

. replace time_treated = 2013 if policy_year == 2013 & D_manuf_highRelation == 1
(121,356 real changes made)

. replace time_treated = 2014 if policy_year == 2014 & D_manuf_highRelation == 1
(60,731 real changes made)

. 
. egen prov_ind2_fe = group(prov industrycode2)

. 
. did_imputation lnsales firm_id years time_treated, fe(firm_id years) autosample cluster(prov_ind2_fe)
Warning: part of the sample was dropped for the following coefficients because FE could not be imputed: tau.

                                                       Number of obs = 426,591
------------------------------------------------------------------------------
     lnsales | Coefficient  Std. err.      z    P>|z|     [95% conf. interval]
-------------+----------------------------------------------------------------
         tau |   .0350359   .0116585     3.01   0.003     .0121857    .0578861
------------------------------------------------------------------------------

. 
. restore

. 
. 
. 
. 
. 
. 
. ********************************************************************************
. **************************表2: 机制分析mechanism analysis
. ******Sun and Abraham(2021)*****
. *** 制造业扩张：第(1)列: 应缴增值税负: taxburden_due_vat
. 
. preserve

. 
. *缩放变量 taxburden_due_vat
. replace taxburden_due_vat = taxburden_due_vat * 100
(380,287 real changes made)

. 
. * a) cohort variable
. gen cohort = . 
(431,008 missing values generated)

. replace cohort = 2012 if policy_year == 2012 & D_manuf_highRelation == 1
(13,012 real changes made)

. replace cohort = 2013 if policy_year == 2013 & D_manuf_highRelation == 1
(121,356 real changes made)

. replace cohort = 2014 if policy_year == 2014 & D_manuf_highRelation == 1
(60,731 real changes made)

. 
. * b) a dummy for the control group 
. gen never_treated = (cohort == .)

. 
. * c) dummies for event time ,excluding -1 .
. gen refy = years - cohort 
(235,909 missing values generated)

. tab refy, miss gen(devent)

       refy |      Freq.     Percent        Cum.
------------+-----------------------------------
         -5 |      8,888        2.06        2.06
         -4 |     30,599        7.10        9.16
         -3 |     37,170        8.62       17.79
         -2 |     37,580        8.72       26.50
         -1 |     29,968        6.95       33.46
          0 |     34,895        8.10       41.55
          1 |     14,454        3.35       44.91
          2 |      1,545        0.36       45.27
          . |    235,909       54.73      100.00
------------+-----------------------------------
      Total |    431,008      100.00

. des devent* 

Variable      Storage   Display    Value
    name         type    format    label      Variable label
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
devent1         byte    %8.0g                 refy== -5.0000
devent2         byte    %8.0g                 refy== -4.0000
devent3         byte    %8.0g                 refy== -3.0000
devent4         byte    %8.0g                 refy== -2.0000
devent5         byte    %8.0g                 refy== -1.0000
devent6         byte    %8.0g                 refy== 0.0000
devent7         byte    %8.0g                 refy== 1.0000
devent8         byte    %8.0g                 refy== 2.0000
devent9         byte    %8.0g                 refy== .

. drop devent5 devent9

. 
. * d) estimate event-study model
. quietly eventstudyinteract taxburden_due_vat devent*  , cohort(cohort) control_cohort(never_treated)   absorb(firm_id  years) vce(cluster prov#industrycode2)

. gen insample = e(sample)

. matrix b = e(b_iw)

. matrix V = e(V_iw)

. ereturn post b V 

. 
. * e) calculate aggregate effects
. * calculate ATT
. keep if insample & D_manuf_highRelation == 1 & inlist(refy, 0,1,2)
(381,652 observations deleted)

. 
. tab refy, matcell(freq)

       refy |      Freq.     Percent        Cum.
------------+-----------------------------------
          0 |     33,826       68.53       68.53
          1 |     14,001       28.37       96.90
          2 |      1,529        3.10      100.00
------------+-----------------------------------
      Total |     49,356      100.00

. matrix list freq

freq[3,1]
       c1
r1  33826
r2  14001
r3   1529

. 
. scalar N0 = freq[1,1]   // 第1行 = refy==0 的样本数

. scalar N1 = freq[2,1]   // 第2行 = refy==1 的样本数

. scalar N2 = freq[3,1]   // 第3行 = refy==2 的样本数

. display N0 N1 N2
33826140011529

. 
. scalar sumN = N0 + N1 + N2

. scalar w0 = N0/sumN

. scalar w1 = N1/sumN

. scalar w2 = N2/sumN

. display w0 w1 w2
.68534727.28367372.03097901

. 
. lincom w0*_b[devent6] + w1*_b[devent7] + w2*_b[devent8]

 ( 1)  .6853473*devent6 + .2836737*devent7 + .030979*devent8 = 0

------------------------------------------------------------------------------
             | Coefficient  Std. err.      z    P>|z|     [95% conf. interval]
-------------+----------------------------------------------------------------
         (1) |  -.0846159   .0336047    -2.52   0.012    -.1504798   -.0187519
------------------------------------------------------------------------------

. 
. 
. restore

. 
. 
. 
. ******现代服务业扩张:第(2)列: 制造业的6项外购服务 modern6_int ******
. 
. preserve

. 
. *缩放变量 modern6_int
. replace modern6_int = modern6_int * 100
(132,693 real changes made)

. 
. * a) cohort variable
. gen cohort = . 
(431,008 missing values generated)

. replace cohort = 2012 if policy_year == 2012 & D_manuf_highRelation == 1
(13,012 real changes made)

. replace cohort = 2013 if policy_year == 2013 & D_manuf_highRelation == 1
(121,356 real changes made)

. replace cohort = 2014 if policy_year == 2014 & D_manuf_highRelation == 1
(60,731 real changes made)

. 
. * b) a dummy for the control group 
. gen never_treated = (cohort == .)

. 
. * c) dummies for event time ,excluding -1 .
. gen refy = years - cohort 
(235,909 missing values generated)

. tab refy, miss gen(devent)

       refy |      Freq.     Percent        Cum.
------------+-----------------------------------
         -5 |      8,888        2.06        2.06
         -4 |     30,599        7.10        9.16
         -3 |     37,170        8.62       17.79
         -2 |     37,580        8.72       26.50
         -1 |     29,968        6.95       33.46
          0 |     34,895        8.10       41.55
          1 |     14,454        3.35       44.91
          2 |      1,545        0.36       45.27
          . |    235,909       54.73      100.00
------------+-----------------------------------
      Total |    431,008      100.00

. des devent* 

Variable      Storage   Display    Value
    name         type    format    label      Variable label
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
devent1         byte    %8.0g                 refy== -5.0000
devent2         byte    %8.0g                 refy== -4.0000
devent3         byte    %8.0g                 refy== -3.0000
devent4         byte    %8.0g                 refy== -2.0000
devent5         byte    %8.0g                 refy== -1.0000
devent6         byte    %8.0g                 refy== 0.0000
devent7         byte    %8.0g                 refy== 1.0000
devent8         byte    %8.0g                 refy== 2.0000
devent9         byte    %8.0g                 refy== .

. drop devent5 devent9

. 
. * d) estimate event-study model
. quietly eventstudyinteract modern6_int devent*  , cohort(cohort) control_cohort(never_treated)   absorb(firm_id  years) vce(cluster prov#industrycode2)

. gen insample = e(sample)

. matrix b = e(b_iw)

. matrix V = e(V_iw)

. ereturn post b V 

. 
. * e) calculate aggregate effects
. * calculate ATT
. keep if insample == 1 & D_manuf_highRelation == 1 & inlist(refy, 0,1,2)
(381,652 observations deleted)

. 
. tab refy, matcell(freq)

       refy |      Freq.     Percent        Cum.
------------+-----------------------------------
          0 |     33,826       68.53       68.53
          1 |     14,001       28.37       96.90
          2 |      1,529        3.10      100.00
------------+-----------------------------------
      Total |     49,356      100.00

. matrix list freq

freq[3,1]
       c1
r1  33826
r2  14001
r3   1529

. 
. scalar N0 = freq[1,1]   // 第1行 = refy==0 的样本数

. scalar N1 = freq[2,1]   // 第2行 = refy==1 的样本数

. scalar N2 = freq[3,1]   // 第3行 = refy==2 的样本数

. display N0 N1 N2
33826140011529

. 
. scalar sumN = N0 + N1 + N2

. scalar w0 = N0/sumN

. scalar w1 = N1/sumN

. scalar w2 = N2/sumN

. display w0 w1 w2
.68534727.28367372.03097901

. 
. lincom w0*_b[devent6] + w1*_b[devent7] + w2*_b[devent8]

 ( 1)  .6853473*devent6 + .2836737*devent7 + .030979*devent8 = 0

------------------------------------------------------------------------------
             | Coefficient  Std. err.      z    P>|z|     [95% conf. interval]
-------------+----------------------------------------------------------------
         (1) |   .0720873   .0139953     5.15   0.000      .044657    .0995175
------------------------------------------------------------------------------

. 
. restore

. 
. 
. ******现代服务业扩张:第(3)列: 制造业的5项外购服务 modern5_int******
. 
. preserve

. 
. *缩放变量 modern5_int
. replace modern5_int = modern5_int * 100
(131,838 real changes made)

. 
. * a) cohort variable
. gen cohort = . 
(431,008 missing values generated)

. replace cohort = 2012 if policy_year == 2012 & D_manuf_highRelation == 1
(13,012 real changes made)

. replace cohort = 2013 if policy_year == 2013 & D_manuf_highRelation == 1
(121,356 real changes made)

. replace cohort = 2014 if policy_year == 2014 & D_manuf_highRelation == 1
(60,731 real changes made)

. 
. * b) a dummy for the control group 
. gen never_treated = (cohort == .)

. 
. * c) dummies for event time ,excluding -1 .
. gen refy = years - cohort 
(235,909 missing values generated)

. tab refy, miss gen(devent)

       refy |      Freq.     Percent        Cum.
------------+-----------------------------------
         -5 |      8,888        2.06        2.06
         -4 |     30,599        7.10        9.16
         -3 |     37,170        8.62       17.79
         -2 |     37,580        8.72       26.50
         -1 |     29,968        6.95       33.46
          0 |     34,895        8.10       41.55
          1 |     14,454        3.35       44.91
          2 |      1,545        0.36       45.27
          . |    235,909       54.73      100.00
------------+-----------------------------------
      Total |    431,008      100.00

. des devent* 

Variable      Storage   Display    Value
    name         type    format    label      Variable label
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
devent1         byte    %8.0g                 refy== -5.0000
devent2         byte    %8.0g                 refy== -4.0000
devent3         byte    %8.0g                 refy== -3.0000
devent4         byte    %8.0g                 refy== -2.0000
devent5         byte    %8.0g                 refy== -1.0000
devent6         byte    %8.0g                 refy== 0.0000
devent7         byte    %8.0g                 refy== 1.0000
devent8         byte    %8.0g                 refy== 2.0000
devent9         byte    %8.0g                 refy== .

. drop devent5 devent9

. 
. * d) estimate event-study model
. quietly eventstudyinteract modern5_int devent*  , cohort(cohort) control_cohort(never_treated)   absorb(firm_id  years) vce(cluster prov#industrycode2)

. gen insample = e(sample)

. matrix b = e(b_iw)

. matrix V = e(V_iw)

. ereturn post b V 

. 
. * e) calculate aggregate effects
. * calculate ATT
. keep if insample == 1 & D_manuf_highRelation == 1 & inlist(refy, 0,1,2)
(381,652 observations deleted)

. 
. tab refy, matcell(freq)

       refy |      Freq.     Percent        Cum.
------------+-----------------------------------
          0 |     33,826       68.53       68.53
          1 |     14,001       28.37       96.90
          2 |      1,529        3.10      100.00
------------+-----------------------------------
      Total |     49,356      100.00

. matrix list freq

freq[3,1]
       c1
r1  33826
r2  14001
r3   1529

. 
. scalar N0 = freq[1,1]   // 第1行 = refy==0 的样本数

. scalar N1 = freq[2,1]   // 第2行 = refy==1 的样本数

. scalar N2 = freq[3,1]   // 第3行 = refy==2 的样本数

. display N0 N1 N2
33826140011529

. 
. scalar sumN = N0 + N1 + N2

. scalar w0 = N0/sumN

. scalar w1 = N1/sumN

. scalar w2 = N2/sumN

. display w0 w1 w2
.68534727.28367372.03097901

. 
. lincom w0*_b[devent6] + w1*_b[devent7] + w2*_b[devent8] 

 ( 1)  .6853473*devent6 + .2836737*devent7 + .030979*devent8 = 0

------------------------------------------------------------------------------
             | Coefficient  Std. err.      z    P>|z|     [95% conf. interval]
-------------+----------------------------------------------------------------
         (1) |   .0679277   .0137872     4.93   0.000     .0409053    .0949501
------------------------------------------------------------------------------

. 
. restore

. 
. 
. 
. 
. 
. ********************************************************************************
. **********表3 第(1)列 制造业在位企业扩张的区位差异
. *distance 交互项: 到中心地区的地理距离
. preserve

. 
. sum distance,d

                          distance
-------------------------------------------------------------
      Percentiles      Smallest
 1%            0              0
 5%     5.772646              0
10%     9.721852              0       Obs             431,008
25%     35.46333              0       Sum of wgt.     431,008

50%     110.8636                      Mean           148.1619
                        Largest       Std. dev.       138.051
75%       219.83       1063.613
90%     349.9519       1063.613       Variance       19058.09
95%     403.6771       1063.613       Skewness       1.406083
99%     603.9669       1063.613       Kurtosis       5.688519

. replace distance = distance/1000  //变量缩放1000倍,以便统一小数点后3位数
(426,221 real changes made)

. 
. gen double policy_manuf_inter  = policy * D_manuf_highRelation

. reghdfe lnmainrev i.policy_manuf_inter##c.distance  , absorb(firm_id prov#years citycluster#years) cluster(prov#industrycode2) //主营业务收入
(dropped 14714 singleton observations)
(MWFE estimator converged in 113 iterations)

HDFE Linear regression                            Number of obs   =    413,990
Absorbing 3 HDFE groups                           F(   3,    843) =       7.27
Statistics robust to heteroskedasticity           Prob > F        =     0.0001
                                                  R-squared       =     0.9445
                                                  Adj R-squared   =     0.9247
                                                  Within R-sq.    =     0.0005
Number of clusters (prov#industrycode2) =        844Root MSE      =     0.5031

                                    (Std. err. adjusted for 844 clusters in prov#industrycode2)
-----------------------------------------------------------------------------------------------
                              |               Robust
                    lnmainrev | Coefficient  std. err.      t    P>|t|     [95% conf. interval]
------------------------------+----------------------------------------------------------------
         1.policy_manuf_inter |   .0022037   .0152056     0.14   0.885    -.0276415    .0320489
                     distance |   1.842714    1.15552     1.59   0.111    -.4253188    4.110747
                              |
policy_manuf_inter#c.distance |
                           1  |   .2017542    .064251     3.14   0.002     .0756436    .3278648
                              |
                        _cons |   10.28082   .1722826    59.67   0.000     9.942663    10.61897
-----------------------------------------------------------------------------------------------

Absorbed degrees of freedom:
-------------------------------------------------------------+
         Absorbed FE | Categories  - Redundant  = Num. Coefs |
---------------------+---------------------------------------|
             firm_id |    108879           0      108879     |
          prov#years |       174          20         154     |
   citycluster#years |       102          84          18    ?|
-------------------------------------------------------------+
? = number of redundant parameters may be higher

. estimates store m1

. 
. outreg2 [m1] using "$EXHIBIT/results.doc", replace ///
>     ctitle("lnmainrev")          /// 列标题
>     se                       /// 报告括号内标准误
>     dec(3) nocons addtext(Firm FE, Yes, Province#Year FE, Yes, CityCluster#Year,Yes)
D:/stata17/Replication_paper/Exhibits/results.doc
dir : seeout

.         
. 
. restore         

. 
. 
. *****************
. * close log txt
. *****************
. 
. log close
      name:  <unnamed>
       log:  D:/stata17/Replication_paper/Logfile_forReg/Analysis_benchmark1_制造业.txt
  log type:  text
 closed on:  25 Jan 2026, 11:57:11
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
