我有一组面板数据,并模拟构建了一个处理组和一个控制组:id大于667的企业是处理组,id小于等于667的企业是控制组。ROA1=ROA*110%+随机数,表示ROA在经过处理后增长;ROA2=ROA*80%-随机数,表示ROA在经过处理后变小。但是所有的ATT都为正,只不过在y=ROA1时,t值>0,y=ROA2时,t<0。按道理来说,只要看t的绝对值即可,为什么这里必须看正负号才能判断出处理效应呢?代码如下:
- use PSM疑问.dta, clear
- tabstat id,s(N mean sd p25 p50 p75 p95 min max) f(%12.3f)
- gen treated = 0
- replace treated = 1 if id > 667
- gen ranorder = runiform()
- gen ROA1 =ROA
- replace ROA1 =ROA*1.1+ranorder if treated == 1
- gen ROA2 = ROA
- replace ROA2 = ROA*0.8-ranorder if treated == 1
- set seed 10101
- gen ranorder2 = runiform()
- sort ranorder2
- psmatch2 treated Size Lev Cash Liquid Dual Indept Age RD , outcome(ROA1) n(1) logit ties ate common
- psmatch2 treated Size Lev Cash Liquid Dual Indept Age RD , outcome(ROA2) n(1) logit ties ate common
复制代码