nab*_*lah 1 loops append stata
我对stata比较新,我需要将几个.dta文件一起添加到一个数据集中.
我有一个名为2015的文件夹,文件如下所示......
jan_2015.dta
feb_2015.dta
mar_2015.dta
Run Code Online (Sandbox Code Playgroud)
......等等dec_2015
.
我尝试了以下代码:
cd C:\Users\TOSHIBA\Desktop\Lender_List\Compiled\2015
local mylist jan_2015 feb_2015 mar_2015 apr_2015 may_2015 jun_2015 jul_2015 aug_2015 sep_2015 oct_2015 nov_2015 dec_2015
foreach filename of local mylist {
use `var'_2015
append using "jan_2015.dta"
}
Run Code Online (Sandbox Code Playgroud)
但是stata的输出说file _2015.dta not found
.
没有必要循环:append
可以获取您可以获得的文件列表fs
:
ssc install fs
cd C:\Users\TOSHIBA\Desktop\Lender_List\Compiled\2015
clear
fs *_2015.dta
append using `r(files)'
Run Code Online (Sandbox Code Playgroud)
如果由于某种原因仍然急于按名称循环文件:
cd C:\Users\TOSHIBA\Desktop\Lender_List\Compiled\2015
clear
foreach filename in `=lower("`c(Mons)'")' {
append using "`filename'_2015.dta"
}
Run Code Online (Sandbox Code Playgroud)
你的代码的主要问题是本地宏lname是文件名,但你取消引用一个名为var的东西,它的计算结果为空,所以Stata找不到名为_2015.dta的文件并抱怨.第二个问题是你的循环似乎试图打开每个月的文件并将1月的数据附加到它.这听起来不像你的想法.
归档时间: |
|
查看次数: |
1924 次 |
最近记录: |