楼主: WARM-KILLER
7595 10

[回归分析求助] psmatch2一直处于运行状态 [推广有奖]

  • 0关注
  • 0粉丝

硕士生

46%

还不是VIP/贵宾

-

威望
0
论坛币
421 个
通用积分
9.0632
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
845 点
帖子
30
精华
0
在线时间
333 小时
注册时间
2015-9-8
最后登录
2025-10-9

楼主
WARM-KILLER 发表于 2019-9-30 18:06:57 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
目前我有一个约30万的面板数据,想进行倾向得分匹配,但运行psmatch2的命令几个小时都没出结果,以下附上命令:global xlist firm_age scale exp ave_wage cap_dens pro_ra type ftype
global TREAT imp033
global ylist kf
global breps 1000


set seed 10101
gen ranorder=runiform()
sort ranorder


psmatch2 $TREAT $xlist i.year i.industry, outcome($ylist) n(4) logit ties ate > common
note: 16.industry != 0 predicts failure perfectly
      16.industry dropped and 293 obs not used
四个小时了依旧是这个界面,我电脑是12G+64位stata16,请问这是我数据有问题还是stata本身运行得慢呢?谢谢各位了~


二维码

扫码加我 拉你入群

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

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

关键词:psmatch2 Match ATCH PSM ATC

沙发
黃河泉 在职认证  发表于 2019-10-1 10:30:43
应该是资料太多所导致的!

藤椅
黃河泉 在职认证  发表于 2019-10-2 06:47:15
1. 请试试 ssc install parallel 与 ssc install batcher 并见其 help 档看看有无帮助 (我也不太确定)。2. 就如同我在上面所说,原因应该就是资料太多,若加上你若要 (而且应该要) 做 bootstrap,psmatch2 几乎是无法运作 (我很难想像所需之时间)。另外可行方法,请考虑 ebalance/cem 等方法,有兴趣请参加我的Stata实用计量方法 http://www.peixun.net/view/1377.html

板凳
WARM-KILLER 发表于 2019-10-9 08:46:54
黃河泉 发表于 2019-10-2 06:47
1. 请试试 ssc install parallel 与 ssc install batcher 并见其 help 档看看有无帮助 (我也不太确定)。2.  ...
感谢黄老师对我问题的解答!抱歉现在才看到!另外,我已经放弃psm了,准备直接did,但是在做平行趋势检验的时候出了点问题,请问黄老师,我有2001到2006年的数据,政策实施是2004年,选取2002年为基年,回归后发现2003年在10%的水平下显著,这样能通过平行趋势检验吗?谢谢黄老师!

报纸
黃河泉 在职认证  发表于 2019-10-9 10:23:30
WARM-KILLER 发表于 2019-10-9 08:46
感谢黄老师对我问题的解答!抱歉现在才看到!另外,我已经放弃psm了,准备直接did,但是在做平行趋势检验 ...
你的回归与结果呢?

地板
黃河泉 在职认证  发表于 2019-10-9 10:26:51
WARM-KILLER 发表于 2019-10-9 08:46
感谢黄老师对我问题的解答!抱歉现在才看到!另外,我已经放弃psm了,准备直接did,但是在做平行趋势检验 ...
其实,除了大家收西的 PSM 外,还有更好更方便 (大家可能较不熟悉) 的方法 EB (entropy balancing) and CEM (coarsened exact matching) 等可与 DID 结合,欲知详细者,请留意 http://www.peixun.net/view/1377.html
  1. Stata实用计量方法
复制代码

7
WARM-KILLER 发表于 2019-10-9 11:23:29
黃河泉 发表于 2019-10-9 10:23
你的回归与结果呢?
黄老师,我的命令如下:gen Dyear=year-2004
gen Before1=(Dyear==-1 & treated==1) //2003
gen Before2=(Dyear==-2 & treated==1) //2002 基年
gen Before3=(Dyear==-3 & treated==1) //2001
gen Current=(Dyear==0 & treated==1) //2004
gen After1=(Dyear==1 & treated==1) //2005
gen After2=(Dyear==2 & treated==1) //2006
xi:xtreg lkfs Before1 Before3 Current After1 After2 $xlist i.industry, fe
我的回归结果如下:
         lkfs |      Coef.   Std. Err.      t    P>|t|     [95% Conf. Interval]
      Before1 |   .0023899   .0075401     0.32   0.751    -.0123886    .0171684
      Before3 |  -.0176316    .007535    -2.34   0.019    -.0324001   -.0028631
      Current |  -.0042211   .0076916    -0.55   0.583    -.0192965    .0108542
       After1 |   .0043825   .0076552     0.57   0.567    -.0106214    .0193865
       After2 |   .0028843   .0075705     0.38   0.703    -.0119536    .0177222
谢谢黄老师!再次感谢!

8
震震果实 发表于 2019-10-9 12:07:06
PSM没有结果的原意是Logit或者probit回归不收敛,也就是匹配的第一步参数化拟合不收敛,所以会一直没有结果;说得更具体一点,你可能是用的工业企业数据库,再具体一点你可能是用了4分位的行业,所以加入了600多个行业虚拟变量,所以导致的不收敛。建议你适用2分位行业进行处理,当然半参数的匹配也是能解决的,但是目前你还处理不了。
已有 1 人评分学术水平 热心指数 信用等级 收起 理由
黃河泉 + 3 + 3 + 3 观点有启发

总评分: 学术水平 + 3  热心指数 + 3  信用等级 + 3   查看全部评分

9
黃河泉 在职认证  发表于 2019-10-9 16:31:23
WARM-KILLER 发表于 2019-10-9 11:23
黄老师,我的命令如下:gen Dyear=year-2004
gen Before1=(Dyear==-1 & treated==1) //2003
gen Before ...
你的检定指令与结果呢?

10
黃河泉 在职认证  发表于 2019-10-9 16:35:24
震震果实 发表于 2019-10-9 12:07
PSM没有结果的原意是Logit或者probit回归不收敛,也就是匹配的第一步参数化拟合不收敛,所以会一直没有结果 ...
的确,这是一个可能性!但是否为此原因,建议楼主可先自己估计
  1. logit treat xlist i.year i.industry
复制代码
看是否可以收敛?

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注jltj
拉您入交流群
GMT+8, 2025-12-29 01:18