全部版块 我的主页
论坛 计量经济学与统计论坛 五区 计量经济学与统计软件 统计软件培训班VIP答疑区
6569 1
2011-03-08
连老师您好,我遇到了如下的问题,我猜测可能是我的preseve, restore的位置有错误,所以才会有报错,请教你了,多谢

第一步,我先定义若干个矩阵(对应于不同的forecast horizons),会将产生的scalar一个个的放到相应的位置上
forvalues i = 1(1)3 {


forvalues j = 0(1)1 {



foreach h of numlist 1 3 6(6)36
{




mat yhat_arima_`i'_`j'_`h' = J(300,1,0)



}


}

}
第二步,分析的变量是d`h’_ln_cpi, 思路是选取不同的样本,estimation period是从obsvations 1-180 1-181 1-182,就是recursive的样本,选取过程一直到1-480,在每个样本里,依次估计不同p,qarima模型,并对每个样本,每个arima模型做预测,每次均将预测的最后一行数值保存为scalar,并最终会放在matrix yhat_arima`i’`j’_`h’
foreach h of numlist 1 3 6(6)36 {

preserve


forvalues k = 1(1)300 {



keep if [_n]<181+`k'


local y "d`h'_ln_cpi"


local a = 3


local b = 1


forvalues i = 1(1)`a'{


forvalues j = 0(1)`b'{


if `j' == 0{


local ma ""


}


else{


local ma "ma(1/`j')"


}


qui arima `y' , ar(1/`i') `ma' vce(robust)



*est store arma`i'`j'



predict y_hat_cpi_arima_`i'_`j'_`h'_`k', xb






}





}


keep if [_n]==181+`k'-1


scalar y_hat_cpi_arima_`i'_`j'_`h'_`k' =

y_hat_cpi_arima_`i'_`j'_`h'_`k'


mat yhat_arima_`i'_`j'_`h'[`k',1]= y_hat_cpi_arima_`i'_`j'_`h'_`k'


}


restore

}

现在的问题是stata报错说y_hat_cpi_arima__1_1 not found,我尝试简化处理,先去掉predict命令以及下面的i,j下标,但是stata始终会报告说insufficient data,对于第一个问题,我不知道是不是因为我的下标过于复杂?对于第二个报错,我在考虑是不是restore, preserve的位置有问题,但是我尝试了其他位置,包括也尝试了snapshot的嵌套,但是还是说insufficient data,不知道对于这两个问题应该如何解决,谢谢连老师!
二维码

扫码加我 拉你入群

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

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

全部回复
2011-3-8 08:56:41
你的问题似乎没有那么复杂,只是你的代码写的的确够令人头痛的,呵呵。
你先简化一下问题,写个最简单的测试程序,然后再逐步复杂化。
二维码

扫码加我 拉你入群

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

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

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

说点什么

分享

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