全部版块 我的主页
论坛 计量经济学与统计论坛 五区 计量经济学与统计软件 Stata专版
15002 23
2011-04-22
悬赏 10 个论坛币 未解决
本人用自己收集的非平衡面板数据,做稳健的豪斯曼检验
出现如下问题:
第一个问题是:
quietly xtreg  sluemtotlzs area5b  lnGDPper lnGDPper2    nvindtotlzs spurbtotlinzs   area1b   slsrvemplzs   slindemplzs  if year>2
> 001,re
. scalar theta=e(theta)
type mismatch
r(109);
进行到第二步就过不去了!!

如果用陈强教材(163)第二种方法, 直接算 theta,则
quietly xtreg  sluemtotlzs deveornot area5b  lnGDPper  lnGDPper2    nvindtotlzs spurbtotlinzs   area1b   slsrvemplzs   slindemplzs
>   if year>2001,re theta
. global yandxforhausman  sluemtotlzs deveornot area5b  lnGDPper lnGDPper2    nvindtotlzs spurbtotlinzs  area1b  slsrvemplzs   slind
> emplzs  if year>2001
. sort countryside
. foreach x of varlist $yandxforhuasman{
  2. by countryside:egen mean`x'=mean(`x')
  3. gen md`x'=`x'-mean`x'
  4. gen red`x'=`x'-theta*mean`x'
  5. }
varlist required
r(100);
哪位高手能给我指点迷津,连跳楼的心都有了!为什么总是搞不定,晕啊。
祝,我的解释变量中,有一个是 虚拟变量,虽然我把虚拟变量去掉,重新做,还是做不出来
二维码

扫码加我 拉你入群

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

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

全部回复
2011-4-22 15:43:00
fh8281 发表于 2011-4-22 14:29
scalar theta=e(theta)
type mismatch
e(theta)是行向量,不能令某标量等于它。
二维码

扫码加我 拉你入群

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

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

2011-4-22 15:45:26
fh8281 发表于 2011-4-22 14:29
quietly xtreg sluemtotlzs area5b lnGDPper lnGDPper2 nvindtotlzs spurbtotlinzs area1b slsrvemplzs slindemplzs if year>2001,re
*运行完以上后

mat l e(theta)

*可显示e(theta)的内容
二维码

扫码加我 拉你入群

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

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

2011-4-22 16:02:57
我试试,你说的这个
                 mat l e(theta)  命令。
scalar theta=e(theta) 命令是教材上的原文,根据教材的数据,采用这一步骤是可以的。
二维码

扫码加我 拉你入群

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

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

2011-4-22 16:11:06
还是不行。
quietly xtreg  sluemtotlzs deveornot area5b  lnGDPper  lnGDPper2    nvindtotlzs spurbtotlinzs   area1b   slsrvemplzs   slindemplzs
>   if year>2001,re
. mat l e(theta)
e(theta)[1,5]
                             c1                  c2                      c3                        c4                    c5
r1       .76180554     .76180554     .900378382       .90769861   .90769861
. global yandxforhausman  sluemtotlzs deveornot area5b  lnGDPper lnGDPper2    nvindtotlzs spurbtotlinzs  area1b  slsrvemplzs   slind
> emplzs  if year>2001
. sort countryside
. foreach x of varlist $yandxforhuasman{
  2. by countryside:egen mean`x'=mean(`x')
  3. gen md`x'=`x'-mean`x'
  4. gen red`x'=`x'-theta*mean`x'
  5. }
varlist required
r(100);
二维码

扫码加我 拉你入群

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

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

2011-4-22 16:53:17
fh8281 发表于 2011-4-22 16:02 scalar theta=e(theta) 命令是教材上的原文
教材此处应该写错了。等号两侧类型不匹配。
二维码

扫码加我 拉你入群

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

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

点击查看更多内容…
相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

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