全部版块 我的主页
论坛 计量经济学与统计论坛 五区 计量经济学与统计软件 Stata专版
2296 2
2009-09-17
我晕:从用Mata以来从没注意到既然会有如此令我不解的问题
今天我用Stata11中的mata进行矩阵运算时,无意间发现用st_data( )定义两个不同的矩阵x和x1时,既然这两个矩阵是一样的,我认为可能我的Stata11有问题,于是用Stata10和Stata9进行验证,结果与Stata11有同样的问题。不知各位的Stata是否有这一问题?我把我的do文件的内容附在下面:

sysuse auto,clear
keep  mpg price  headroom
gen c=1
quie reg  price mpg headroom
predict r,resid
mata
y=st_data(.,2)
x=st_data(.,(1,3,4))
x1=st_data(.,(1,3,5))
x
x1
end

从这do文件中可以看出,矩阵x和x1是不相同的,x由变量price、headroom和c组成,而x1由变量price、headroom和r组成,但这个执行这个do文件的结果是矩阵x和x1是一样的。不解啊!!!!!

do文件运行结果如下:

. sysuse auto,clear
(1978 Automobile Data)
. keep  mpg price  headroom
. gen c=1
. quie reg mpg  price headroom
. predict r,resid
. mata
------------------------------------------------- mata (type end to exit) -------------
: y=st_data(.,2)
: x=st_data(.,(1,3,4))
: x1=st_data(.,(1,3,5))
: x
            1       2       3
     +-------------------------+
   1 |   4099     2.5       1  |
   2 |   4749       3       1  |
   3 |   3799       3       1  |
   4 |   4816     4.5       1  |
   5 |   7827       4       1  |
   6 |   5788       4       1  |
   7 |   4453       3       1  |
   8 |   5189       2       1  |
   9 |  10372     3.5       1  |
  10 |   4082     3.5       1  |
      (略)
: x1
            1       2       3
     +-------------------------+
   1 |   4099     2.5       1  |
   2 |   4749       3       1  |
   3 |   3799       3       1  |
   4 |   4816     4.5       1  |
   5 |   7827       4       1  |
   6 |   5788       4       1  |
   7 |   4453       3       1  |
   8 |   5189       2       1  |
   9 |  10372     3.5       1  |
  10 |   4082     3.5       1  |
      (略)
: end
二维码

扫码加我 拉你入群

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

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

全部回复
2009-9-17 17:43:42
运行一下,结果如你所说。
原因在于r变量没有保存
predict后保存数据 后运行mata 得到不同的结果!
二维码

扫码加我 拉你入群

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

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

2009-9-17 19:43:23
是要save一下才行,谢谢dxystata!
二维码

扫码加我 拉你入群

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

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

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

说点什么

分享

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