2

我有一个包含 .csv 文件的文件夹,总大小为 6 GB。我想自动将此文件夹中的所有数据插入Stata。

在网上搜索,我找到了一些解决方案,例如:

cd "E:\myfolder"

. insheet using "file1.csv"

. save "a", replace


. local satafiles: dir . files "*.csv"

. foreach file of local satafiles {
  2. append using "a"
  3. save "myfile.dta", replace
  4. }

但是,如果我浏览导入的数据,我在所有条目中都有相同的日期值。有人有Stata导入数据的经验吗?

4

1 回答 1

3

这是重复的,因为您只是多次附加“a”,即您的第一个数据集。尝试这个:

cd "E:\myfolder"

clear
local satafiles: dir . files "*.csv"

foreach file of local satafiles {
    preserve
    insheet using `file',clear
    save temp,replace
    restore
    append using temp
}
*remove the temporary .dta file
rm temp

save alldata, replace

请注意,如果文件变得太大,您可以在insheet命令后进行一些节省空间的格式化。

于 2013-09-30T13:41:03.423 回答