全部版块 我的主页
论坛 计量经济学与统计论坛 五区 计量经济学与统计软件 Stata专版
4911 5
2009-06-06

大家帮忙看看这个命令,总是返回 /invalid name,不知道是怎么回事


foreach i in 2002/2008{
gen double y`i'=cond(year==i,1,0)
}

二维码

扫码加我 拉你入群

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

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

全部回复
2009-6-6 15:18:00

刚才试了一下,下面的这个命令可以

forvalues i=2002/2008{
gen double y`i'=cond(year==`i',1,0)
}

但是即使改为

foreach i in 2002/2008{
gen double y`i'=cond(year==`i',1,0)
}

仍然是不行的,请高手赐教其中原因,谢谢。

二维码

扫码加我 拉你入群

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

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

2009-6-7 00:09:00



foreach lname in any_list {

Is 2002/2008 any_list?



. foreach i in 2002/2008 {
  2. disp `i' 
  3. }
.997012             // 0.997012 = 2002/2008












[此贴子已经被作者于2009-6-7 0:14:38编辑过]

二维码

扫码加我 拉你入群

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

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

2009-6-8 10:03:00

*如果一定要用"foreach"与"2002/2008(步长为1)",可使用

foreach i of num 2002/2008{

二维码

扫码加我 拉你入群

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

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

2009-6-10 16:58:00
多谢两位老兄
二维码

扫码加我 拉你入群

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

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

2009-7-9 23:59:39
voodoo 发表于 2009-6-7 00:09
foreach lname in any_list {
Is 2002/2008 any_list?
. foreach i in 2002/2008 {
  2. disp `i'
  3. }
.997012             // 0.997012 = 2002/2008

[此贴子已经被作者于2009-6-7 0:14:38编辑过]

认真看了help foreach,才知道,原来在foreach i in 2002/2008 {...}中2002/2008被看成any_list的一个元素啦,而非denver想要的numlists!也就是说2002_2008确实是any_list,但此时any_list只包括2002/2008这一元素。

foreach i in 2002/2008 {
         di "`i'"
}
将显示
2002/2008

用forvalues i = 2002/2008 {     // help forvalues推荐用此方法,the fastest!
或foreach i of numlist 2002/2008 {
二维码

扫码加我 拉你入群

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

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

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

说点什么

分享

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