全部版块 我的主页
论坛 计量经济学与统计论坛 五区 计量经济学与统计软件 Stata专版
3340 2
2014-11-30
我想通过循环来依次改变变量的值却提示type mismatchdo "D:\Stata 12_ALL\looprtt.do"

. forvalues i=1/10000{
  2. mat d=[rnormal()\rnormal()\rnormal()]
  3. mat b=e*d+c
  4. mat rt =f*b+rnormal()*sigma
  5. replace rtt=rt[1,1] in `i'
  6. }
type mismatch
r(109);

end of do-file
这里矩阵都是没有问题的,我想用每次循环生成的矩阵的第一个值来作为变量rtt的值,可是为啥不能成功呢,有大神知道什么原因吗


二维码

扫码加我 拉你入群

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

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

全部回复
2014-12-1 09:31:30
local aa=rt[1,1]
replace rtt=`aa' in `i'
二维码

扫码加我 拉你入群

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

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

2014-12-6 13:59:40
ermutuxia 发表于 2014-12-1 09:31
local aa=rt[1,1]
replace rtt=`aa' in `i'
谢谢你这个方法。其实也是可以直接把矩阵里面的值放入变量,replace rtt=rt[1,1] in `i'是能实现的,我的问题就是开始设置rtt的时候设置成了str格式,导致mismatch.谢啦
二维码

扫码加我 拉你入群

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

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

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

分享

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