楼主: slnau1978
1443 2

[Stata高级班] Monte carlo simulation编程问题 [推广有奖]

  • 0关注
  • 0粉丝

大专生

35%

还不是VIP/贵宾

-

威望
0
论坛币
0 个
通用积分
0
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
208 点
帖子
20
精华
0
在线时间
53 小时
注册时间
2007-9-9
最后登录
2014-5-5

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币
连老师:
您好!
我在学习Monte Carlo Simulation的编程,碰到一个小问题,不知道怎么回事。
运行下面的程序,无法得出结果。return list命令也没有东西。 如果最后用simulate  _b _se, reps(10) nodots: ppmlsim_k1 x1 x2
则错误信息为“no variables defined r(111);”。请指点一下哪里出了问题。(另外,我用OLS回归模拟没有出现这个问题。模拟结束会返回关于_b _se的信息,不知道这个该怎么设置?)

谢谢!

*--------------------------------------------------------------------------------
program define ppmlsim_k1,rclass
version 10.0
clear
set obs 1000
gen x1=rnormal()
gen x2 = uniform()
replace x2 = (x2<=0.40)
gen v=1/(exp(1*x1+1*x2))
gen f=rnormal(-(ln(v+1))/2,ln(v+1))
gen y=exp(1*x1+1*x2+f)
syntax varlist
tempvar y1 k
       gen `k'=1
        gen `y1' = y-`k'
        replace `y1'=0 if `y1'<0
        poisson `y1' `varlist',robust
        
end
*------------------------------------------
      simulate , reps(10) nodots: ppmlsim_k1 x1 x2
      sum
二维码

扫码加我 拉你入群

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

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

关键词:Monte Carlo Simulation ulation Carlo ATION Monte Carlo Simulation

沙发
arlionn 在职认证  发表于 2010-2-3 09:11:45 |只看作者 |坛友微信交流群
由于不太清楚你做MC的目的和具体思路,只能根据你提供的程序进行猜测。

看看下面的程序是不是你想要的:

*--------------------------------------------------------------------------------
cap program drop ppmlsim_k1
program define ppmlsim_k1,rclass
version 10.0
clear
set obs 1000
* gen x1=rnormal()
  gen x1=invnorm(uniform())
gen x2 = uniform()
replace x2 = (x2<=0.40)
gen v=1/(exp(1*x1+1*x2))
* gen f=normal(-(ln(v+1))/2,ln(v+1))  // rnormal()?
  gen f=-(ln(v+1))/2 + invnorm(uniform())*ln(v+1)
gen y=exp(1*x1+1*x2+f)
* syntax varlist
tempvar y1 k
       gen `k'=1
        gen `y1' = y-`k'
        replace `y1'=0 if `y1'<0
        *poisson `y1' `varlist',robust
        poisson `y1' x1 x2, robust
        return scalar b1 = _b[x1]
        return scalar b2 = _b[x2]
        
end
*------------------------------------------
      ppmlsim_k1
      simulate b1=r(b1) b2=r(b2), reps(10) nodots: ppmlsim_k1
      sum

使用道具

藤椅
slnau1978 发表于 2010-2-4 02:20:43 |只看作者 |坛友微信交流群
问题已解决,谢谢连老师!有个高手在身边解惑,感觉真的很好!!

使用道具

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

本版微信群
加好友,备注jltj
拉您入交流群

京ICP备16021002-2号 京B2-20170662号 京公网安备 11010802022788号 论坛法律顾问:王进律师 知识产权保护声明   免责及隐私声明

GMT+8, 2024-5-1 01:39