全部版块 我的主页
论坛 计量经济学与统计论坛 五区 计量经济学与统计软件 Stata专版
3646 5
2012-09-23
悬赏 1500 个论坛币 未解决
我知道为什么eq3和eq4得到一样的结果,为什么了eq1和eq2得到一样的结果,紧紧是因为stata系统的原因嘛?

clear
set seed 13579
set obs 1000
gen x1=invnorm(uniform())
gen x2=2*invnorm(uniform())
gen e=invnorm(uniform())
gen y=3+x1+3*x2+e

gen z=y if y<10
replace z=10 if y>=10


*drop in 1/100

tobit z x1 x2, ul(10)  //eq1
tobit z x1 x2, ul(10.0000000000000001)  //eq2

reg z x1 x2 //eq3
tobit z x1 x2, ul(10.000001)  //eq4
二维码

扫码加我 拉你入群

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

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

全部回复
2012-9-23 19:28:08
说句话都不清楚 不知道你要说啥
二维码

扫码加我 拉你入群

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

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

2012-9-24 09:03:15
跟软件的储存精度有关。比如
复制代码
二维码

扫码加我 拉你入群

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

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

2012-9-24 09:04:25
上面两个命令:
复制代码
二维码

扫码加我 拉你入群

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

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

2012-9-25 02:56:38
夏目兄,谢谢!

我关心这个问题是因为,我现在写一个程序,为了少写一些程序(MLE的程序),我直接调用tobit(做了一些数据的平移,所以用到local来表示平移的大小),在程序中我用了local和gen生成了一些变量,但是local的有效位数是7位的,gen一个数据是8位的有效数字。

这样的结果就变得本来应该相同的两个数字A和B,有了10e-8数量级的差别,A是dependent variable的最大数字,B是我想放在ul()里面的数字,A比B小10e-8。这样的结果就导致tobit失效,就像您上面说的。

我有想过解决的方法,比如在最开始把所有的输入变量都换成7位的,但是通过这些变量新生成的还是8位,另外,就算我每生成一个变量都把它变成7位,好像最后结果也是不行。

stata有没有什么命令设置在当前环境下,所有的local和变量都是一样的位数?
二维码

扫码加我 拉你入群

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

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

2012-9-25 03:05:05
另外一个有关tobit的问题是,

我想用tobit估计 x(t)=x(t-1)+e(t),其实我是想得到tobit的max likelihood的数字。

x(t-1)前面的系数是1,e(t)是error term

所以我的命令是:tobit y ,offset(ylag) nocon ll(0) ul(1)
可惜程序报错:independent variables required with noconstant option

问题:那我应该怎么写命令来实现我的想法?
非常感谢你的帮助啊。。。
二维码

扫码加我 拉你入群

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

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

相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群