楼主: wyy19860530
3329 1

[Stata初级班] 如何在for循环语句(包括preserve和restore)数据集里添加已生成的变量? [推广有奖]

  • 0关注
  • 0粉丝

硕士生

7%

还不是VIP/贵宾

-

威望
0
论坛币
0 个
通用积分
0
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
892 点
帖子
59
精华
0
在线时间
164 小时
注册时间
2007-4-18
最后登录
2018-12-19

楼主
wyy19860530 在职认证  发表于 2011-3-8 14:18:37 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
对于一个rolling recursive的样本,对于每一次的子样本,我想对于y_cpi_`h'每
一个regressor单独做回归,然后产生一组预测值,并且能让这些预测值保留在原来
的数据集中,但是由于我每次需要改变我的estimation period,所以我使用了
preserve和restore的嵌套,但是这样就导致了每次生成的新predict变量不能保存
下来,不知道应该如何处理这个冲突?请教连老师,谢谢了
forvalues i = 1(1)300 {
  preserve
  keep if [_n]<181+`i'
  foreach num of numlist 1(1)30 33(3)66 72(6)108 120  {
    regress y_cpi by_`num'
    predict y_CF_NS_`i'_`num'
  }
  restore
}
问题是:我想每次得到这些预测序列都能留在数据集里,但是这就和下面的restore
矛盾了,但是如果不用restore,我又没法用keep if 每次选取依次递增的子样本
二维码

扫码加我 拉你入群

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

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

关键词:preserve restore Reserve Store Serve 变量 数据集 语句 preserve restore

沙发
arlionn 在职认证  发表于 2011-3-9 09:29:08
gen tt = _n
forvalues i = 1(1)300 {
  foreach num of numlist 1(1)30 33(3)66 72(6)108 120  {
    regress y_cpi by_`num' if   tt<181+`i'
    predict y_CF_NS_`i'_`num' if e(sample)
  }

}

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注jltj
拉您入交流群
GMT+8, 2025-12-26 07:03