0
我想在Stata中创建一个循环。我为数据运行模型< =年和< =季度。然后预测一年展望。这就是模型在循环中的所有时间点运行,而预测在下一个季度出现样本。所以我的问题是我如何处理,这样,当yridx = 2000,QTR = 4,下一个季度内环路展望将是年= 2005年和年= 1Stata周期循环
foreach yridx of numlist 2000/2012 {
forvalues qtridx = 1/4 {
regress Y X if year <= yridx and qtr <= qtridx
predict
}
}
这样做,并且比我的方法更清洁!非常感谢。有一个小错字'forvalues m ='= yq(2000,1)'/'= yq(2012,4)'{}'..我遇到的一个后续问题是如果我在循环内部增加m,我称之为'm'+ 1的方式是否正确? 'gen qdate = yq(year,qtridx) forval m ='= yq(2000,1)'/'= yq(2012,4)'{ '如果qdate <='m'+ 1 }则退步YX' – rajvijay
错字固定;感谢那。你不应该试图在循环内部实现循环计数器。没有什么能够阻止其他操作,比如'本地M = \'m'+ 1'。 –