Stata是否有类似于Java的“try and catch”机制?
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了Stata是否有类似于Java的“try and catch”机制?,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含949字,纯文字阅读大概需要2分钟。
内容图文
![Stata是否有类似于Java的“try and catch”机制?](/upload/InfoBanner/zyjiaocheng/707/6e9e1cd79a34435bbb5089bf320b1982.jpg)
我正在写一个.do来检查一些.dta文件中是否存在某些变量,以及检查这些变量是否存在某些值.但是,我的代码在遇到无效的变量名时停止执行.
我知道我混合Java和Stata编码,这是完全不合适的,但有什么方法我可以做类似的事情:
try {
su var1
local var1_mean=(mean)var1
local var1_min=(min)var1
local var1_max=(max)var1
...
}
catch (NoSuchVariableException e) {
System.out.println("Var1 does not exist")
}
// So that the code does not stop executing...?
解决方法:
简短的回答是肯定的.稍微长一点的答案是,与Java类比,猜测语法可能是成功的最小机会.最好阅读Stata的文档,例如首先浏览[P]手册中的主要条目.
这里遇到的问题是不存在var1.这段代码是合法的,或者我相信:
capture su var1, meanonly
if _rc == 0 {
local var1_mean = r(mean)
local var1_min = r(min)
local var1_max = r(max)
}
else display "var1 does not exist"
这个想法是双重的. capture会占用它前缀的命令的任何错误,但是仍然可以在_rc中访问返回码.非零返回码是错误代码.
相关的命令是确认的,例如,
capture confirm var var1
检查变量var1是否存在.
内容总结
以上是互联网集市为您收集整理的Stata是否有类似于Java的“try and catch”机制?全部内容,希望文章能够帮你解决Stata是否有类似于Java的“try and catch”机制?所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。