全部版块 我的主页
论坛 计量经济学与统计论坛 五区 计量经济学与统计软件 Stata专版
3991 2
2011-06-24
悬赏 5 个论坛币 已解决
在嵌套程序中用了continue,break,发现整个循环都终止了,而我的目的只是终止其中的子循环。。。新手求解

local x1
local x2
local z1
local z2
foreach v of varlist v2-v31 {
forvalues i=1/300{
if `v'[`i']!=.{
local x1=`v'[`i'+20]
local x2=`v'[`i'+272]
replace `v'=`x1' in 500
replace `v'=`x2' in 501
display `x1'
display `x2'
continue,break}   //此处就把foreach 的循环终止了。。。而我只想终止forvalues的循环
}
}

最佳答案

sungmoo 查看完整内容

括号的位置。
二维码

扫码加我 拉你入群

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

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

全部回复
2011-6-24 17:13:33
thumper 发表于 2011-6-24 17:13 在嵌套程序中用了continue,break,发现整个循环都终止了,而我的目的只是终止其中的子循环
foreach v of var v2-v31 {
forv i=1/300{
if `v'[`i']<.{
replace `v'=`v'[`i'+20] in 500
replace `v'=`v'[`i'+272] in 501
di `x1' "    " `x2'
continue
}
}
}
括号的位置。
二维码

扫码加我 拉你入群

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

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

2011-6-24 18:13:32
thumper 发表于 2011-6-24 17:13 在嵌套程序中用了continue,break,发现整个循环都终止了,而我的目的只是终止其中的子循环。。。新手求解
local x1
local x2
local z1
local z2
这几步是不必要的。stata默认未明确赋值的macro为空串。
二维码

扫码加我 拉你入群

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

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

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

说点什么

分享

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