本文介绍了如何循环访问Stata中的文件名的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
1)是否可以在Stata中创建字符串的向量?2)如果可以,是否可以遍历此向量中的元素,对每个元素执行命令?
要在Stata中创建单个字符串,我知道您会这样做:
local x = "a string"
但是我需要遍历大约200个数据文件,它们不能方便地使用"_2000""_2001""_2002"等连续后缀命名。事实上,文件名没有韵律或原因,但我确实有一个它们的列表,我可以轻松地将它们剪切并粘贴到字符串向量中,然后逐个调用该向量的元素,就像在MATLAB中可能做的那样。
在Stata中有办法做到这一点吗?
推荐答案
当然--您只需使用典型的本地调用创建一个列表。如果你不在整件事上加引号,你的清单可能会很长。
local mylist aaa bbb "cc c" dd ee ff
然后只需使用foreach
。
foreach filename of local mylist {
use `"`filename'"'
}
使用双引号(`" "'
)是因为其中一个文件名由于空格而带有引号。这比将foreach filename in `mylist' {
放在第一行快一点。
help macrolists
。相关问题已在堆栈溢出上询问>1次:
- In Stata how do you assign a long list of variable names to a local macro?
- Equivalent function of R's "%in%" for Stata
这篇关于如何循环访问Stata中的文件名的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!