首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >嵌套循环中所需的支撑错误

嵌套循环中所需的支撑错误
EN

Stack Overflow用户
提问于 2018-08-08 00:19:33
回答 1查看 316关注 0票数 0

我正在使用Stata中的嵌套循环处理我的第一个循环,但是无法让代码运行。

以下是我所拥有的:

代码语言:javascript
复制
*identify anti policies of contiguous states
forvalues yr = 1983/1993 {
foreach state in Alabama Alaska Arizona Arkansas California Colorado 
Connecticut Delaware Florida Georgia Hawaii 
Idaho Illinois Indiana Iowa Kansas Kentucky Louisiana Maine Maryland 
Massachusetts Michigan Minnesota Mississippi 
Missouri Montana Nebraska Nevada NewHampshire NewJersey NewMexico NewYork 
NorthCarolina NorthDakota Ohio 
Oklahoma Oregon Pennsylvania RhodeIsland SouthCarolina SouthDakota Tennessee 
Texas Utah Vermont Virginia 
Washington WestVirginia Wisconsin Wyoming {
 gen 'st'_anti_'yr'=.
 replace 'st'_anti_'yr'=1 if 'st'_c==1 & anti["st"_"yr"]==1 
 replace 'st'_anti_'yr'=0 if 'st'_c==0 | anti["st"_"yr"]==0
}
}

当我运行代码时,我得到了错误:

代码语言:javascript
复制
r(100) or r(100) { required 

无论我如何修改代码(添加或删除‘或“等),都会出现此错误。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-08-08 00:59:05

您需要在每一行的末尾添加///,这样Stata就可以将所有状态视为一个连续的行。将所有状态保存在本地宏中,然后在循环中使用这一点,这也是一个很好的实践。

例如:

代码语言:javascript
复制
local states Alabama Alaska Arizona Arkansas California Colorado  Connecticut ///
Delaware Florida Georgia Hawaii Idaho Illinois Indiana Iowa Kansas Kentucky ///
Louisiana Maine Maryland Massachusetts Michigan Minnesota Mississippi ///
Missouri Montana Nebraska Nevada NewHampshire NewJersey NewMexico NewYork ///
NorthCarolina NorthDakota Ohio Oklahoma Oregon Pennsylvania RhodeIsland ///
SouthCarolina SouthDakota Tennessee Texas Utah Vermont Virginia Washington ///
WestVirginia Wisconsin Wyoming

forvalues yr = 1983 / 1993 {
    foreach state of local states {
        display "`yr' `state'"
    }
}

此外,在您的示例中,您似乎错误地指定了本地宏state,并且忘记为本地宏yr使用引号。

代码语言:javascript
复制
forvalues yr = 1983 / 1993 {
    foreach state of local states {
        generate `state'_anti_`yr'=.
        replace `state'_anti_`yr'=1 if `state'_c==1 & anti[`state'_`yr']==1 
        replace `state'_anti_`yr'=0 if `state'_c==0 | anti[`state'_`yr']==0
    }
}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51737033

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档