本文介绍了如何循环访问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次:

这篇关于如何循环访问Stata中的文件名的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

10-25 07:22